hwq 1 year ago
parent
commit
78bdfa9e3d
100 changed files with 667 additions and 0 deletions
  1. 14 0
      .editorconfig
  2. 17 0
      .env.development
  3. 7 0
      .env.production
  4. 8 0
      .env.staging
  5. 6 0
      .eslintignore
  6. 268 0
      .eslintrc.js
  7. 23 0
      .gitignore
  8. 6 0
      .prettierignore
  9. 35 0
      .prettierrc.js
  10. 5 0
      .travis.yml
  11. 21 0
      LICENSE
  12. 257 0
      README.md
  13. BIN
      __MACOSX/._.editorconfig
  14. BIN
      __MACOSX/._.env.development
  15. BIN
      __MACOSX/._.env.production
  16. BIN
      __MACOSX/._.env.staging
  17. BIN
      __MACOSX/._.eslintignore
  18. BIN
      __MACOSX/._.eslintrc.js
  19. BIN
      __MACOSX/._.gitignore
  20. BIN
      __MACOSX/._.prettierignore
  21. BIN
      __MACOSX/._.prettierrc.js
  22. BIN
      __MACOSX/._.travis.yml
  23. BIN
      __MACOSX/._LICENSE
  24. BIN
      __MACOSX/._README.md
  25. BIN
      __MACOSX/._babel.config.js
  26. BIN
      __MACOSX/._build
  27. BIN
      __MACOSX/._jest.config.js
  28. BIN
      __MACOSX/._jsconfig.json
  29. BIN
      __MACOSX/._mock
  30. BIN
      __MACOSX/._package.json
  31. BIN
      __MACOSX/._patches
  32. BIN
      __MACOSX/._plop-templates
  33. BIN
      __MACOSX/._plopfile.js
  34. BIN
      __MACOSX/._postcss.config.js
  35. BIN
      __MACOSX/._public
  36. BIN
      __MACOSX/._src
  37. BIN
      __MACOSX/._static
  38. BIN
      __MACOSX/._tests
  39. BIN
      __MACOSX/._vue.config.js
  40. BIN
      __MACOSX/build/._index.js
  41. BIN
      __MACOSX/mock/._article.js
  42. BIN
      __MACOSX/mock/._index.js
  43. BIN
      __MACOSX/mock/._mock-server.js
  44. BIN
      __MACOSX/mock/._remote-search.js
  45. BIN
      __MACOSX/mock/._role
  46. BIN
      __MACOSX/mock/._user.js
  47. BIN
      __MACOSX/mock/role/._index.js
  48. BIN
      __MACOSX/mock/role/._routes.js
  49. BIN
      __MACOSX/patches/._element-ui+2.13.2.patch
  50. BIN
      __MACOSX/plop-templates/._component
  51. BIN
      __MACOSX/plop-templates/._store
  52. BIN
      __MACOSX/plop-templates/._utils.js
  53. BIN
      __MACOSX/plop-templates/._view
  54. BIN
      __MACOSX/plop-templates/component/._index.hbs
  55. BIN
      __MACOSX/plop-templates/component/._prompt.js
  56. BIN
      __MACOSX/plop-templates/store/._index.hbs
  57. BIN
      __MACOSX/plop-templates/store/._prompt.js
  58. BIN
      __MACOSX/plop-templates/view/._index.hbs
  59. BIN
      __MACOSX/plop-templates/view/._prompt.js
  60. BIN
      __MACOSX/public/._UEditor
  61. BIN
      __MACOSX/public/._favicon.ico
  62. BIN
      __MACOSX/public/._iconfont
  63. BIN
      __MACOSX/public/._index.html
  64. BIN
      __MACOSX/public/UEditor/._UEditor
  65. BIN
      __MACOSX/public/UEditor/._dialogs
  66. BIN
      __MACOSX/public/UEditor/._index.html
  67. BIN
      __MACOSX/public/UEditor/._lang
  68. BIN
      __MACOSX/public/UEditor/._themes
  69. BIN
      __MACOSX/public/UEditor/._third-party
  70. BIN
      __MACOSX/public/UEditor/._ueditor.all.js
  71. BIN
      __MACOSX/public/UEditor/._ueditor.all.min.js
  72. BIN
      __MACOSX/public/UEditor/._ueditor.config.js
  73. BIN
      __MACOSX/public/UEditor/._ueditor.parse.js
  74. BIN
      __MACOSX/public/UEditor/._ueditor.parse.min.js
  75. BIN
      __MACOSX/public/UEditor/UEditor/._dialogs
  76. BIN
      __MACOSX/public/UEditor/UEditor/._index.html
  77. BIN
      __MACOSX/public/UEditor/UEditor/._lang
  78. BIN
      __MACOSX/public/UEditor/UEditor/._themes
  79. BIN
      __MACOSX/public/UEditor/UEditor/._third-party
  80. BIN
      __MACOSX/public/UEditor/UEditor/._ueditor.all.js
  81. BIN
      __MACOSX/public/UEditor/UEditor/._ueditor.all.min.js
  82. BIN
      __MACOSX/public/UEditor/UEditor/._ueditor.config.js
  83. BIN
      __MACOSX/public/UEditor/UEditor/._ueditor.parse.js
  84. BIN
      __MACOSX/public/UEditor/UEditor/._ueditor.parse.min.js
  85. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._attachment
  86. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._background
  87. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._charts
  88. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._emotion
  89. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._gmap
  90. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._help
  91. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._image
  92. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._insertframe
  93. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._internal.js
  94. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._link
  95. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._map
  96. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._music
  97. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._preview
  98. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._scrawl
  99. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._searchreplace
  100. BIN
      __MACOSX/public/UEditor/UEditor/dialogs/._snapscreen

+ 14 - 0
.editorconfig

@@ -0,0 +1,14 @@
+# https://editorconfig.org
+root = true
+
+[*]
+charset = utf-8
+indent_style = space
+indent_size = 2
+end_of_line = lf
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+[*.md]
+insert_final_newline = false
+trim_trailing_whitespace = false

+ 17 - 0
.env.development

@@ -0,0 +1,17 @@
+# just a flag
+ENV = 'development'
+
+# base api
+VUE_APP_BASE_API = 'http://test-own.zf.crmeb.store'
+#VUE_APP_BASE_API = 'http://192.168.31.147:1215'
+# socket 连接地址
+VUE_APP_WS_URL = 'ws://test-own.zf.crmeb.store'
+
+# vue-cli uses the VUE_CLI_BABEL_TRANSPILE_MODULES environment variable,
+# to control whether the babel-plugin-dynamic-import-node plugin is enabled.
+# It only does one thing by converting all import() to require().
+# This configuration can significantly increase the speed of hot updates,
+# when you have a large number of pages.
+# Detail:  https://github.com/vuejs/vue-cli/blob/dev/packages/@vue/babel-preset-app/index.js
+
+VUE_CLI_BABEL_TRANSPILE_MODULES = true

+ 7 - 0
.env.production

@@ -0,0 +1,7 @@
+# just a flag
+ENV = 'production'
+
+# base api
+VUE_APP_BASE_API =
+# socket 连接地址
+VUE_APP_WS_URL =

+ 8 - 0
.env.staging

@@ -0,0 +1,8 @@
+NODE_ENV = production
+
+# just a flag
+ENV = 'staging'
+
+# base api
+VUE_APP_BASE_API = '/stage-api'
+

+ 6 - 0
.eslintignore

@@ -0,0 +1,6 @@
+build/*.js
+src/assets
+src/layout
+public
+dist
+src/views/business/components/formSetting

+ 268 - 0
.eslintrc.js

@@ -0,0 +1,268 @@
+// module.exports = {
+//   root: true,
+//   parserOptions: {
+//     parser: 'babel-eslint',
+//     sourceType: 'module',
+//   },
+//   env: {
+//     browser: true,
+//     node: true,
+//     es6: true,
+//   },
+//   extends: ['plugin:prettier/recommended'],
+
+  // add your custom rules here
+  //it is base on https://github.com/vuejs/eslint-config-vue
+  // rules: {
+  //   'vue/max-attributes-per-line': [
+  //     2,
+  //     {
+  //       singleline: 10,
+  //       multiline: {
+  //         max: 1,
+  //         allowFirstLine: false
+  //       }
+  //     }
+  //   ],
+  //   'vue/singleline-html-element-content-newline': 'off',
+  //   'vue/multiline-html-element-content-newline': 'off',
+  //   'vue/name-property-casing': ['error', 'PascalCase'],
+  //   'vue/no-v-html': 'off',
+  //   'vue/html-self-closing': 'on',
+  //   'accessor-pairs': 2,
+  //   'arrow-spacing': [
+  //     2,
+  //     {
+  //       before: true,
+  //       after: true
+  //     }
+  //   ],
+  //   'block-spacing': [2, 'always'],
+  //   'brace-style': [
+  //     2,
+  //     '1tbs',
+  //     {
+  //       allowSingleLine: true
+  //     }
+  //   ],
+  //   camelcase: [
+  //     0,
+  //     {
+  //       properties: 'always'
+  //     }
+  //   ],
+  //   'comma-dangle': [2, 'never'],
+  //   'comma-spacing': [
+  //     2,
+  //     {
+  //       before: false,
+  //       after: true
+  //     }
+  //   ],
+  //   'comma-style': [2, 'last'],
+  //   'constructor-super': 2,
+  //   curly: [2, 'multi-line'],
+  //   'dot-location': [2, 'property'],
+  //   'eol-last': 2,
+  //   eqeqeq: 'off',
+  //   'generator-star-spacing': [
+  //     2,
+  //     {
+  //       before: true,
+  //       after: true
+  //     }
+  //   ],
+  //   'handle-callback-err': [2, '^(err|error)$'],
+  //   indent: [
+  //     2,
+  //     2,
+  //     {
+  //       SwitchCase: 1
+  //     }
+  //   ],
+  //   'jsx-quotes': [2, 'prefer-single'],
+  //   'key-spacing': [
+  //     2,
+  //     {
+  //       beforeColon: false,
+  //       afterColon: true
+  //     }
+  //   ],
+  //   'keyword-spacing': [
+  //     2,
+  //     {
+  //       before: true,
+  //       after: true
+  //     }
+  //   ],
+  //   'new-cap': [
+  //     2,
+  //     {
+  //       newIsCap: true,
+  //       capIsNew: false
+  //     }
+  //   ],
+  //   'new-parens': 2,
+  //   'no-array-constructor': 2,
+  //   'no-caller': 2,
+  //   'no-console': 'off',
+  //   'no-class-assign': 2,
+  //   'no-cond-assign': 2,
+  //   'no-const-assign': 2,
+  //   'no-control-regex': 0,
+  //   'no-delete-var': 2,
+  //   'no-dupe-args': 2,
+  //   'no-dupe-class-members': 2,
+  //   'no-dupe-keys': 2,
+  //   'no-duplicate-case': 2,
+  //   'no-empty-character-class': 2,
+  //   'no-empty-pattern': 2,
+  //   'no-eval': 2,
+  //   'no-ex-assign': 2,
+  //   'no-extend-native': 2,
+  //   'no-extra-bind': 2,
+  //   'no-extra-boolean-cast': 2,
+  //   'no-extra-parens': [2, 'functions'],
+  //   'no-fallthrough': 2,
+  //   'no-floating-decimal': 2,
+  //   'no-func-assign': 2,
+  //   'no-implied-eval': 2,
+  //   'no-inner-declarations': [2, 'functions'],
+  //   'no-invalid-regexp': 2,
+  //   'no-irregular-whitespace': 2,
+  //   'no-iterator': 2,
+  //   'no-label-var': 2,
+  //   'no-labels': [
+  //     2,
+  //     {
+  //       allowLoop: false,
+  //       allowSwitch: false
+  //     }
+  //   ],
+  //   'no-lone-blocks': 2,
+  //   'no-mixed-spaces-and-tabs': 2,
+  //   'no-multi-spaces': 2,
+  //   'no-multi-str': 2,
+  //   'no-multiple-empty-lines': [
+  //     2,
+  //     {
+  //       max: 1
+  //     }
+  //   ],
+  //   'no-native-reassign': 2,
+  //   'no-negated-in-lhs': 2,
+  //   'no-new-object': 2,
+  //   'no-new-require': 2,
+  //   'no-new-symbol': 2,
+  //   'no-new-wrappers': 2,
+  //   'no-obj-calls': 2,
+  //   'no-octal': 2,
+  //   'no-octal-escape': 2,
+  //   'no-path-concat': 2,
+  //   'no-proto': 2,
+  //   'no-redeclare': 2,
+  //   'no-regex-spaces': 2,
+  //   'no-return-assign': [2, 'except-parens'],
+  //   'no-self-assign': 2,
+  //   'no-self-compare': 2,
+  //   'no-sequences': 2,
+  //   'no-shadow-restricted-names': 2,
+  //   'no-spaced-func': 2,
+  //   'no-sparse-arrays': 2,
+  //   'no-this-before-super': 2,
+  //   'no-throw-literal': 2,
+  //   'no-trailing-spaces': 2,
+  //   'no-undef': 2,
+  //   'no-undef-init': 2,
+  //   'no-unexpected-multiline': 2,
+  //   'no-unmodified-loop-condition': 2,
+  //   'no-unneeded-ternary': [
+  //     2,
+  //     {
+  //       defaultAssignment: false
+  //     }
+  //   ],
+  //   'no-unreachable': 2,
+  //   'no-unsafe-finally': 2,
+  //   'no-unused-vars': [
+  //     2,
+  //     {
+  //       vars: 'all',
+  //       args: 'none'
+  //     }
+  //   ],
+  //   'no-useless-call': 2,
+  //   'no-useless-computed-key': 2,
+  //   'no-useless-constructor': 2,
+  //   'no-useless-escape': 0,
+  //   'no-whitespace-before-property': 2,
+  //   'no-with': 2,
+  //   'one-var': [
+  //     2,
+  //     {
+  //       initialized: 'never'
+  //     }
+  //   ],
+  //   'operator-linebreak': [
+  //     2,
+  //     'after',
+  //     {
+  //       overrides: {
+  //         '?': 'before',
+  //         ':': 'before'
+  //       }
+  //     }
+  //   ],
+  //   'padded-blocks': [2, 'never'],
+  //   quotes: [
+  //     2,
+  //     'single',
+  //     {
+  //       avoidEscape: true,
+  //       allowTemplateLiterals: true
+  //     }
+  //   ],
+  //   semi: [2, 'never'],
+  //   'semi-spacing': [
+  //     2,
+  //     {
+  //       before: false,
+  //       after: true
+  //     }
+  //   ],
+  //   'space-before-blocks': [2, 'always'],
+  //   'space-before-function-paren': 0,
+  //   'space-in-parens': [2, 'never'],
+  //   'space-infix-ops': 2,
+  //   'space-unary-ops': [
+  //     2,
+  //     {
+  //       words: true,
+  //       nonwords: false
+  //     }
+  //   ],
+  //   'spaced-comment': [
+  //     2,
+  //     'always',
+  //     {
+  //       markers: ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ',']
+  //     }
+  //   ],
+  //   'template-curly-spacing': [2, 'never'],
+  //   'use-isnan': 2,
+  //   'valid-typeof': 2,
+  //   'wrap-iife': [2, 'any'],
+  //   'yield-star-spacing': [2, 'both'],
+  //   yoda: [2, 'never'],
+  //   'prefer-const': 2,
+  //   'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
+  //   'object-curly-spacing': [
+  //     2,
+  //     'always',
+  //     {
+  //       objectsInObjects: false
+  //     }
+  //   ],
+  //   'array-bracket-spacing': [2, 'never']
+  // }
+// };

+ 23 - 0
.gitignore

@@ -0,0 +1,23 @@
+.DS_Store
+node_modules/
+dist/
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+**/*.log
+
+tests/**/coverage/
+tests/e2e/reports
+selenium-debug.log
+
+# Editor directories and files
+.idea
+.vscode
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.local
+
+package-lock.json
+yarn.lock

+ 6 - 0
.prettierignore

@@ -0,0 +1,6 @@
+build/*.js
+src/assets
+src/layout
+public
+dist
+src/utils/rgbaster.js

+ 35 - 0
.prettierrc.js

@@ -0,0 +1,35 @@
+module.exports = {
+  // 一行最多 120 字符
+  printWidth: 120,
+  // 使用 2 个空格缩进
+  tabWidth: 2,
+  // 不使用 tab 缩进,而使用空格
+  useTabs: false,
+  // 行尾需要有分号
+  semi: true,
+  // 使用单引号代替双引号
+  singleQuote: true,
+  // 对象的 key 仅在必要时用引号
+  quoteProps: 'as-needed',
+  // jsx 不使用单引号,而使用双引号
+  jsxSingleQuote: false,
+  // 末尾使用逗号
+  trailingComma: 'all',
+  // 大括号内的首尾需要空格 { foo: bar }
+  bracketSpacing: true,
+  // 箭头函数,只有一个参数的时候,也需要括号
+  arrowParens: 'always',
+  // 每个文件格式化的范围是文件的全部内容
+  rangeStart: 0,
+  rangeEnd: Infinity,
+  // 不需要写文件开头的 @prettier
+  requirePragma: false,
+  // 不需要自动在文件开头插入 @prettier
+  insertPragma: false,
+  // 使用默认的折行标准
+  proseWrap: 'preserve',
+  // 根据显示样式决定 html 要不要折行
+  htmlWhitespaceSensitivity: 'css',
+  // 换行符使用 lf
+  endOfLine: 'lf',
+};

+ 5 - 0
.travis.yml

@@ -0,0 +1,5 @@
+language: node_js
+node_js: 10
+script: npm run test
+notifications:
+  email: false

+ 21 - 0
LICENSE

@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2017-present PanJiaChen
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.

+ 257 - 0
README.md

@@ -0,0 +1,257 @@
+# 陀螺匠·企业助手
+
+## 开发规范
+
+统一使用 ES6 语法
+方法注释
+/\*
+
+- th => 表头
+- data => 数据
+- fileName => 文件名
+- fileType => 文件类型
+- sheetName => sheet 页名
+  \*/
+  export default function toExcel ({ th, data, fileName, fileType, sheetName })
+  行注释 //
+
+### 命名
+
+页面目录 文件夹命名格式骆驼式命名法,例如:用户列表 userList
+例如:个人中心
+user 个人中心
+├─ company 我的企业
+├─ examine 申请审批
+├- forum 知识社区
+
+页面命名、组建、文件夹 命名格式小驼峰命名法,例如:用户列表 userList
+
+类名函数命名 大驼峰式 例如:addUser
+变量命名 小驼峰式 例如:user 或者 userInfo
+常量 采用全大些下划线命名 例如:VUE_APP_API_URl
+
+### 文件管理规范
+
+src 页面模块必须件文件夹区分
+api 接口一个模块一个文件
+assets 静态文件目录
+components 全局组件目录
+directive 自定义v-的js文件
+lang 多语言
+layout 初始化组件
+libs 自定义常用函数
+mixins 发送短信验证码
+router 全局路由设置 一个模块在 modules 中建一个文件夹
+store 路由状态管理,一个模块在 modules 中建一个文件夹
+styles 样式尽量采用 element-ui 自带组件,common.less 系统通用样式不要轻易动
+utils 自定义工具 js 独立命名,一般不用新建文件夹
+views 前端代码静态文件目录
+
+## 模块命名
+
+```
+├─ administration 行政管理
+├─ business 办公审批
+├─ product 商品管理
+├─ customer 客户管理
+├─ error-page 全局错误页
+├─ user 用户管理
+├─ fd 财务管理
+├─ hr 人事管理
+├─ logo 登录与注册页面
+├─ setting 系统身份管理 系统权限管理、系统菜单管理、操作日志
+├─ user 个人中心 工作台、我的日程、办公中心、企业动态、企业通讯录、职位说明、知识社区等等
+
+```
+
+## 目录结构
+
+主要目录结构及说明:
+
+```
+
+├── public                    # 静态资源
+│   ├── iconfont              # iconfont 图标
+│   └── UEditor               # 编辑器图标
+│   └── favicon.ico           # 浏览器窗口小图标 
+├── src                       # 源代码
+│   ├── api                   # 所有接口api
+│   │    └──administration.js # 请求封装
+│   │    └──business.js       # 有办公审批的接口
+│   │    └──config.js         # 有关初始化的接口
+│   │    └──enterprise.js     # 有企业相关的接口
+│   │    └──request.js        # 有关api初始化的接口
+│   │    └──setting.js        # 有关权限管理的接口
+│   │    └──system.js         # 有关系统配置的接口
+│   │    └──systemForm.js     # 有关表单组件的接口
+│   │    └──user.js           # 有关登录、用户的接口
+│   ├── assets                # 图片、svg 等静态资源
+│   ├── icons                 # svg 等静态资源
+│   ├── components            # 公共组件
+│   │    └──accessCommon      # 公共考核标签设置
+│   │    └──approvalBill      # 添加明细组件
+│   │    └──approvalBillView  # 查看明细组件
+│   │    └──Breadcrumb        # 头部标题标签
+│   │    └──CLTable           # 无计算高度的table组件
+│   │    └──dateQuarter       # 选择季度与半年考核组件
+│   │    └──defaultPage       # 缺省页
+│   │    └──department        # 考核模板库与指标库导航
+│   │    └──departmentTree    # 选择人员/部门
+│   │    └──departmentTreeChange   # 审批流程中选择人员/部门
+│   │    └──dialogForm        # Form表单dialog弹框
+│   │    └──echarts           # echarts封装
+│   │    └──ELTable           # 计算高度的table组件
+│   │    └──exportExcel       # excel批量导出
+│   │    └──importExcel       # excel批量导入
+│   │    └──LangSelect        # 多语言切换
+│   │    └──payment           # 全局支付接口
+│   │    └──selectTarget      # 选择指标库
+│   │    └──selectTemplate    # 选择模板库
+│   │    └──uploadFrom        # 上传附件
+│   │    └──uploadPicture     # 上传图片
+│   ├── layout                # 导航布局
+│   │    ├──index             # 主页面
+│   │    ├──components        # 导航组件
+│   │        └──headerNotice  # 顶部消息中心
+│   │        └──Document      # 右下角陀螺匠帮助中心
+│   │        └──TagsView      # tab标签页导航
+│   │        └──Navbar        # 头部导航
+│   │        └──AppMain       # 导航路由
+│   │        └──index.js      # 组件引用
+│   │    └──mixins            # 自适应大小
+│   ├── libs                  # 公共js方法
+│   │    └──settingMer        # 配置请求地址
+│   ├── views                 # 所有页面
+│   │    └──login                    # 登录
+│   │         └──index               # 登录
+│   │    └──dashboard                # 首页
+│   │    └──user                     # 个人办公
+│   │         └──workbench           # 工作台
+│   │         └──workCalendar        # 我的日程
+│   │         └──examine             # 申请审批
+│   │         └──workDaily           # 我的汇报
+│   │         └──workAssessment      # 绩效考核
+│   │         └──workCloudfile       # 云文件
+│   │         └──workNotice          # 企业动态
+│   │         └──workEnt             # 企业通讯录
+│   │         └──workDuty            # 职位说明
+│   │         └──forum               # 知识社区
+│   │         └──memorandum          # 记事本
+│   │         └──news                # 消息中心
+│   │         └──company             # 我的企业
+│   │    └──customer                 # 客户管理
+│   │         └──list                # 客户列表
+│   │         └──invoice             # 发票管理
+│   │         └──contract            # 合同管理
+│   │         └──setupWork           # 业务设置
+│   │         └──setupLabel          # 客户标签
+│   │         └──setupType           # 客户分类
+│   │    └──hr                       # 人事管理
+│   │         └──archivesUser        # 员工档案
+│   │         └──assessStaff         # 员工绩效
+│   │         └──assessConfig        # 考核设置
+│   │         └──enterprise          # 人事管理
+│   │              └──group              # 组织架构
+│   │              └──articleCategory    # 文章分类
+│   │              └──job                # 职位管理
+│   │    └──business                 # 审批
+│   │         └──examine             # 办公审批
+│   │         └──record              # 审批记录
+│   │    └──fd                       # 财务管理
+              └──examine             # 财务审核
+│   │         └──invoice             # 发票管理
+│   │         └──enterprise        
+│   │              └──billList       # 收支记账
+│   │              └──billChart      # 收支统计
+│   │              └──billCate       # 账目分类
+│   │              └──billType       # 支付方式      
+│   │    └──administration           # 行政管理
+│   │         └──notice              # 企业动态
+│   │         └──material 
+│   │           └──chart             # 物资概览
+│   │           └──list              # 物资记录
+│   │           └──staff             # 物资管理
+│   │    └──setting                  # 系统管理
+│   │         └──enterprise          
+│   │           └──info             # 企业信息
+│   │           └──group            # 用户权限
+│   │           └──admin            # 角色权限
+│   │           └──group            # 用户权限
+│   │         └──system         
+│   │           └──menu             # 菜单管理
+│   │           └──log              # 操作日志
+│   │         └──enterprise      
+│   │           └──workbench        # 工作台设置  
+│   │           └──news             # 消息设置  
+│   │           └──attach           # 素材管理 
+│   │         └──data             
+│   │           └──legal            # 权益数据
+│   │           └──order            # 历史订单
+│   │           └──invoice          # 发票申请
+│   │  
+│   ├── filters                      # 过滤器
+│   ├── router                           # 路由配置
+│   │    └──modules                      # 页面路由模块
+│   │         └──user.js                  # 有关个人办公
+│   │         └──business.js                  # 有关审批
+│   │         └──setting .js                  # 有关系统管理
+│   │         └──administration .js           # 有关行政管理
+│   │         └──fd.js                        # 有关财务管理
+│   │         └──hr.js                        # 有关人事管理
+│   │         └──customer.js                  # 有关客户管理   
+│   │    └──index.js                          # 路由的汇总
+│   ├── store                                 # Vuex 状态管理
+│   ├── utils                                 # 全局公用方法
+│   ├── styles            # 样式管理
+│   ├── permission.js     # 路由拦截
+│   ├── setting.js        # 业务配置文件
+│   ├── main.js           # 入口文件 加载组件 初始化等
+│   └── App.vue           # 入口页面
+├── tests                      # 测试
+├── .env.xxx                   # 环境变量配置
+├── .eslintrc.js               # eslint 配置项
+├── .babelrc                   # babel-loader 配置
+├── .travis.yml                # 自动化CI配置
+├── vue.config.js              # vue-cli 配置
+├── postcss.config.js          # postcss 配置
+└── package.json               # package.json
+
+```
+
+## 开发打包项目
+
+````
+# 进入项目目录
+$ cd admin-oa-ent
+
+# 安装依赖
+$ npm install
+
+# 启动项目(本地开发环境)
+$ npm run dev
+
+# 打包项目
+## Build
+
+```bash
+# build for test environment
+npm run build:stage
+
+# build for production environment
+npm run build:prod
+```
+## Advanced
+```bash
+# preview the release environment effect
+npm run preview
+
+# preview the release environment effect + static resource analysis
+npm run preview -- --report
+
+# code format check
+npm run lint
+
+# code format check and auto fix
+npm run lint -- --fix
+```
+````

BIN
__MACOSX/._.editorconfig


BIN
__MACOSX/._.env.development


BIN
__MACOSX/._.env.production


BIN
__MACOSX/._.env.staging


BIN
__MACOSX/._.eslintignore


BIN
__MACOSX/._.eslintrc.js


BIN
__MACOSX/._.gitignore


BIN
__MACOSX/._.prettierignore


BIN
__MACOSX/._.prettierrc.js


BIN
__MACOSX/._.travis.yml


BIN
__MACOSX/._LICENSE


BIN
__MACOSX/._README.md


BIN
__MACOSX/._babel.config.js


BIN
__MACOSX/._build


BIN
__MACOSX/._jest.config.js


BIN
__MACOSX/._jsconfig.json


BIN
__MACOSX/._mock


BIN
__MACOSX/._package.json


BIN
__MACOSX/._patches


BIN
__MACOSX/._plop-templates


BIN
__MACOSX/._plopfile.js


BIN
__MACOSX/._postcss.config.js


BIN
__MACOSX/._public


BIN
__MACOSX/._src


BIN
__MACOSX/._static


BIN
__MACOSX/._tests


BIN
__MACOSX/._vue.config.js


BIN
__MACOSX/build/._index.js


BIN
__MACOSX/mock/._article.js


BIN
__MACOSX/mock/._index.js


BIN
__MACOSX/mock/._mock-server.js


BIN
__MACOSX/mock/._remote-search.js


BIN
__MACOSX/mock/._role


BIN
__MACOSX/mock/._user.js


BIN
__MACOSX/mock/role/._index.js


BIN
__MACOSX/mock/role/._routes.js


BIN
__MACOSX/patches/._element-ui+2.13.2.patch


BIN
__MACOSX/plop-templates/._component


BIN
__MACOSX/plop-templates/._store


BIN
__MACOSX/plop-templates/._utils.js


BIN
__MACOSX/plop-templates/._view


BIN
__MACOSX/plop-templates/component/._index.hbs


BIN
__MACOSX/plop-templates/component/._prompt.js


BIN
__MACOSX/plop-templates/store/._index.hbs


BIN
__MACOSX/plop-templates/store/._prompt.js


BIN
__MACOSX/plop-templates/view/._index.hbs


BIN
__MACOSX/plop-templates/view/._prompt.js


BIN
__MACOSX/public/._UEditor


BIN
__MACOSX/public/._favicon.ico


BIN
__MACOSX/public/._iconfont


BIN
__MACOSX/public/._index.html


BIN
__MACOSX/public/UEditor/._UEditor


BIN
__MACOSX/public/UEditor/._dialogs


BIN
__MACOSX/public/UEditor/._index.html


BIN
__MACOSX/public/UEditor/._lang


BIN
__MACOSX/public/UEditor/._themes


BIN
__MACOSX/public/UEditor/._third-party


BIN
__MACOSX/public/UEditor/._ueditor.all.js


BIN
__MACOSX/public/UEditor/._ueditor.all.min.js


BIN
__MACOSX/public/UEditor/._ueditor.config.js


BIN
__MACOSX/public/UEditor/._ueditor.parse.js


BIN
__MACOSX/public/UEditor/._ueditor.parse.min.js


BIN
__MACOSX/public/UEditor/UEditor/._dialogs


BIN
__MACOSX/public/UEditor/UEditor/._index.html


BIN
__MACOSX/public/UEditor/UEditor/._lang


BIN
__MACOSX/public/UEditor/UEditor/._themes


BIN
__MACOSX/public/UEditor/UEditor/._third-party


BIN
__MACOSX/public/UEditor/UEditor/._ueditor.all.js


BIN
__MACOSX/public/UEditor/UEditor/._ueditor.all.min.js


BIN
__MACOSX/public/UEditor/UEditor/._ueditor.config.js


BIN
__MACOSX/public/UEditor/UEditor/._ueditor.parse.js


BIN
__MACOSX/public/UEditor/UEditor/._ueditor.parse.min.js


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._attachment


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._background


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._charts


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._emotion


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._gmap


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._help


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._image


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._insertframe


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._internal.js


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._link


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._map


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._music


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._preview


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._scrawl


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._searchreplace


BIN
__MACOSX/public/UEditor/UEditor/dialogs/._snapscreen


Some files were not shown because too many files changed in this diff