赵冬冬 3 年之前
父節點
當前提交
6a5b69ae89
共有 100 個文件被更改,包括 276 次插入5053 次删除
  1. 1 1
      .env.development
  2. 2 1
      .env.production
  3. 2 1
      .env.staging
  4. 9 9
      README.md
  5. 0 12
      bin/build.bat
  6. 1 1
      bin/package.bat
  7. 1 1
      build/index.js
  8. 10 14
      package.json
  9. 1 7
      src/api/activiti/definition.js
  10. 0 19
      src/api/activiti/formStart.js
  11. 6 5
      src/api/activiti/processInstance.js
  12. 0 70
      src/api/assets/allot.js
  13. 0 53
      src/api/assets/audit.js
  14. 0 53
      src/api/assets/his.js
  15. 0 79
      src/api/assets/input.js
  16. 0 53
      src/api/assets/item.js
  17. 0 70
      src/api/assets/out.js
  18. 0 33
      src/api/assets/pendingNew.js
  19. 0 31
      src/api/assets/processedNew.js
  20. 0 70
      src/api/assets/scrap.js
  21. 0 99
      src/api/assets/stock.js
  22. 1 1
      src/api/login.js
  23. 0 80
      src/api/monitor/job.js
  24. 0 35
      src/api/monitor/jobLog.js
  25. 0 25
      src/api/monitor/logininfor.js
  26. 0 25
      src/api/monitor/operlog.js
  27. 0 9
      src/api/system/config.js
  28. 1 17
      src/api/system/dept.js
  29. 0 9
      src/api/system/dict/data.js
  30. 0 17
      src/api/system/dict/type.js
  31. 0 59
      src/api/system/materiel.js
  32. 0 9
      src/api/system/post.js
  33. 0 9
      src/api/system/role.js
  34. 0 61
      src/api/system/supplier.js
  35. 2 28
      src/api/system/user.js
  36. 0 59
      src/api/tool/gen.js
  37. 0 0
      src/assets/icons/svg/cascader.svg
  38. 0 1
      src/assets/icons/svg/checkbox.svg
  39. 0 0
      src/assets/icons/svg/color.svg
  40. 0 0
      src/assets/icons/svg/component.svg
  41. 0 0
      src/assets/icons/svg/date-range.svg
  42. 0 0
      src/assets/icons/svg/date.svg
  43. 0 1
      src/assets/icons/svg/github.svg
  44. 0 1
      src/assets/icons/svg/input.svg
  45. 0 0
      src/assets/icons/svg/number.svg
  46. 1 1
      src/assets/icons/svg/password.svg
  47. 0 1
      src/assets/icons/svg/question.svg
  48. 0 1
      src/assets/icons/svg/radio.svg
  49. 0 1
      src/assets/icons/svg/rate.svg
  50. 0 1
      src/assets/icons/svg/row.svg
  51. 0 1
      src/assets/icons/svg/select.svg
  52. 0 1
      src/assets/icons/svg/slider.svg
  53. 0 1
      src/assets/icons/svg/switch.svg
  54. 0 1
      src/assets/icons/svg/textarea.svg
  55. 0 0
      src/assets/icons/svg/time-range.svg
  56. 0 1
      src/assets/icons/svg/time.svg
  57. 0 1
      src/assets/icons/svg/upload.svg
  58. 0 5
      src/assets/styles/element-ui.scss
  59. 0 71
      src/assets/styles/ruoyi.scss
  60. 1 1
      src/components/Editor/index.vue
  61. 0 21
      src/components/RuoYi/Doc/index.vue
  62. 0 21
      src/components/RuoYi/Git/index.vue
  63. 1 1
      src/components/SizeSelect/index.vue
  64. 1 1
      src/components/SvgIcon/index.vue
  65. 10 16
      src/layout/components/Navbar.vue
  66. 4 4
      src/layout/components/Settings/index.vue
  67. 1 1
      src/layout/components/Sidebar/Logo.vue
  68. 1 1
      src/layout/components/Sidebar/SidebarItem.vue
  69. 4 7
      src/layout/components/TagsView/index.vue
  70. 54 52
      src/main.js
  71. 3 29
      src/router/index.js
  72. 1 1
      src/settings.js
  73. 0 1
      src/store/modules/permission.js
  74. 13 6
      src/store/modules/tagsView.js
  75. 0 423
      src/utils/generator/config.js
  76. 0 18
      src/utils/generator/css.js
  77. 0 29
      src/utils/generator/drawingDefalut.js
  78. 0 338
      src/utils/generator/html.js
  79. 0 0
      src/utils/generator/icon.json
  80. 0 236
      src/utils/generator/js.js
  81. 0 121
      src/utils/generator/render.js
  82. 0 69
      src/utils/index.js
  83. 0 30
      src/utils/jsencrypt.js
  84. 6 31
      src/utils/permission.js
  85. 1 1
      src/utils/request.js
  86. 65 156
      src/utils/ruoyi.js
  87. 0 40
      src/utils/zipdownload.js
  88. 10 30
      src/views/activiti/definition/index.vue
  89. 9 9
      src/views/activiti/form/index.vue
  90. 0 106
      src/views/activiti/formStart/index.vue
  91. 0 237
      src/views/activiti/formsActiviti/allotForm.vue
  92. 31 89
      src/views/activiti/formsActiviti/index.vue
  93. 0 231
      src/views/activiti/formsActiviti/inputForm.vue
  94. 0 186
      src/views/activiti/formsActiviti/outForm.vue
  95. 0 206
      src/views/activiti/formsActiviti/scrapForm.vue
  96. 1 1
      src/views/activiti/image/index.vue
  97. 0 21
      src/views/activiti/modeler/index.vue
  98. 21 28
      src/views/activiti/processInstance/index.vue
  99. 0 672
      src/views/assets/allot/index.vue
  100. 0 367
      src/views/assets/audit/index.vue

+ 1 - 1
.env.development

@@ -1,7 +1,7 @@
 # 开发环境配置
 ENV = 'development'
 
-# 综合运维服务系统/开发环境
+# 若依管理系统/开发环境
 VUE_APP_BASE_URL = 'http://172.16.90.11:8080'
 VUE_APP_BASE_API = '/dev-api'
 

+ 2 - 1
.env.production

@@ -1,5 +1,6 @@
 # 生产环境配置
 ENV = 'production'
 
-# 综合运维服务系统/生产环境
+# 若依管理系统/生产环境
+VUE_APP_BASE_URL = 'http://172.16.90.8:8080'
 VUE_APP_BASE_API = '/prod-api'

+ 2 - 1
.env.staging

@@ -3,5 +3,6 @@ NODE_ENV = production
 # 测试环境配置
 ENV = 'staging'
 
-# 综合运维服务系统/测试环境
+# 若依管理系统/测试环境
+VUE_APP_BASE_URL = 'http://172.16.90.8:8080'
 VUE_APP_BASE_API = '/stage-api'

+ 9 - 9
README.md

@@ -1,27 +1,27 @@
 ## 开发
 
+```bash
+# 克隆项目
+git clone https://gitee.com/y_project/RuoYi-Vue
+
+# 进入项目目录
+cd ruoyi-ui
+
 # 安装依赖
 npm install
 
 # 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
-#npm install --registry=https://registry.npm.taobao.org
-#这个是因为sass安装时获取源的问题,先修改sass安装的源,再运行npm install就成功了
-npm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass
+npm install --registry=https://registry.npm.taobao.org
 
-#动态表单设计 开始
+#动态表单设计
 npm install vue-ele-form --save
 
-#josn编辑
-npm install v-jsoneditor
-
 #文件上传
 npm install npm install vue-ele-form-upload-file --save
 
 #图片上传
 npm install vue-ele-form-image-uploader --save
 
-#动态表单设计 结束
-
 # 启动服务
 npm run dev
 ```

+ 0 - 12
bin/build.bat

@@ -1,12 +0,0 @@
-@echo off
-echo.
-echo [信息] 打包Web工程,生成dist文件。
-echo.
-
-%~d0
-cd %~dp0
-
-cd ..
-npm run build:prod
-
-pause

+ 1 - 1
bin/package.bat

@@ -1,6 +1,6 @@
 @echo off
 echo.
-echo [信息] 安装Web工程,生成node_modules文件。
+echo [信息] 打包Web工程,生成node_modules包文件。
 echo.
 
 %~d0

+ 1 - 1
build/index.js

@@ -9,7 +9,7 @@ if (process.env.npm_config_preview || rawArgv.includes('--preview')) {
 
   run(`vue-cli-service build ${args}`)
 
-  const port = 9526
+  const port = 8080
   const publicPath = config.publicPath
 
   var connect = require('connect')

+ 10 - 14
package.json

@@ -1,7 +1,7 @@
 {
   "name": "ruoyi",
-  "version": "2.2.0",
-  "description": "综合运维服务系统",
+  "version": "1.0.0",
+  "description": "若依管理系统",
   "author": "若依",
   "license": "MIT",
   "scripts": {
@@ -40,40 +40,36 @@
     "url": "https://gitee.com/y_project/RuoYi-Vue.git"
   },
   "dependencies": {
-    "@riophae/vue-treeselect": "0.4.0",
+    "@riophae/vue-treeselect": "0.1.0",
     "axios": "0.18.1",
-    "clipboard": "2.0.4",
     "echarts": "4.2.1",
-    "element-ui": "2.13.0",
-    "file-saver": "2.0.1",
+    "element-form-builder": "^1.2.0",
+    "element-ui": "2.11.1",
     "fuse.js": "3.4.4",
     "install": "^0.13.0",
-    "js-beautify": "^1.10.2",
     "js-cookie": "2.2.0",
-    "jsencrypt": "3.0.0-rc.1",
     "normalize.css": "7.0.0",
-    "npm": "^6.14.4",
+    "npm": "^6.14.13",
     "nprogress": "0.2.0",
     "path-to-regexp": "2.4.0",
     "screenfull": "4.2.0",
-    "sortablejs": "1.8.4",
     "v-jsoneditor": "^1.2.3",
     "vue": "2.6.10",
+    "vue-awesome-form": "^1.0.4",
     "vue-count-to": "1.0.13",
     "vue-cropper": "0.4.9",
-    "vue-ele-form": "^0.8.24",
-    "vue-ele-form-image-uploader": "^0.1.5",
+    "vue-ele-form": "^0.6.20",
+    "vue-ele-form-image-uploader": "^0.1.9",
+    "vue-ele-form-json-editor": "^0.1.2",
     "vue-ele-form-upload-file": "0.0.5",
     "vue-quill-editor": "3.0.6",
     "vue-router": "3.0.2",
     "vue-splitpane": "1.0.4",
-    "vuedraggable": "2.20.0",
     "vuex": "3.1.0"
   },
   "devDependencies": {
     "@babel/core": "7.0.0",
     "@babel/register": "7.0.0",
-    "@babel/parser": "^7.7.4",
     "@vue/cli-plugin-babel": "3.5.3",
     "@vue/cli-plugin-eslint": "^3.9.1",
     "@vue/cli-plugin-unit-jest": "3.5.3",

+ 1 - 7
src/api/activiti/definition.js

@@ -21,13 +21,7 @@ export function upload(data) {
 }
 
 
-// 获取流程
-export function getByKey(processDefinitionKey) {
-  return request({
-    url: '/definition/key/'+processDefinitionKey+'?t=' + Math.random(),
-    method: 'get',
-  })
-}
+
 
 
 

+ 0 - 19
src/api/activiti/formStart.js

@@ -1,19 +0,0 @@
-import request from '@/utils/request'
-
-//审核流程表单
-export function showForms(key) {
-  return request({
-    url: '/leaveNew/processKey/' + key,
-    method: 'get'
-  })
-}
-// 更新
-export function commit(data) {
-  return request({
-    url: '/leaveNew',
-    method: 'put',
-    data: data
-  })
-}
-
-

+ 6 - 5
src/api/activiti/processInstance.js

@@ -16,14 +16,15 @@ export function upload(query) {
   })
 }
 
-// 多选删除
-export function delTitle(ids) {
+// 分页查询
+export function delTitle(query) {
   return request({
-    url: '/processInstance',
-    method: 'delete',
-    data: ids
+    url: '/processInstance/list',
+    method: 'get',
+    params: query
   })
 }
+
 // 分页查询
 export function suspendProcess(processInstanceId,status) {
   return request({

+ 0 - 70
src/api/assets/allot.js

@@ -1,70 +0,0 @@
-import request from '@/utils/request'
-
-// 查询资产调拨列表
-export function listAllot(query) {
-  return request({
-    url: '/assets/allot/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询资产调拨详细
-export function getAllot(aId) {
-  return request({
-    url: '/assets/allot/' + aId,
-    method: 'get'
-  })
-}
-
-// 新增资产调拨
-export function addAllot(data) {
-  return request({
-    url: '/assets/allot',
-    method: 'post',
-    data: data
-  })
-}
-
-// 提交审核
-export function commit(aId,processId) {
-  return request({
-    url: '/assets/allot/commit/'+aId+'/'+processId,
-    method: 'post',
-  })
-}
-
-// 提交审核
-export function recommit(data) {
-  return request({
-    url: '/assets/allot/recommit',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改资产调拨
-export function updateAllot(data) {
-  return request({
-    url: '/assets/allot',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除资产调拨
-export function delAllot(aId) {
-  return request({
-    url: '/assets/allot/' + aId,
-    method: 'delete'
-  })
-}
-
-// 导出资产调拨
-export function exportAllot(query) {
-  return request({
-    url: '/assets/allot/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 53
src/api/assets/audit.js

@@ -1,53 +0,0 @@
-import request from '@/utils/request'
-
-// 查询审核列表
-export function listAudit(query) {
-  return request({
-    url: '/assets/audit/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询审核详细
-export function getAudit(id) {
-  return request({
-    url: '/assets/audit/' + id,
-    method: 'get'
-  })
-}
-
-// 新增审核
-export function addAudit(data) {
-  return request({
-    url: '/assets/audit',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改审核
-export function updateAudit(data) {
-  return request({
-    url: '/assets/audit',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除审核
-export function delAudit(id) {
-  return request({
-    url: '/assets/audit/' + id,
-    method: 'delete'
-  })
-}
-
-// 导出审核
-export function exportAudit(query) {
-  return request({
-    url: '/assets/audit/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 53
src/api/assets/his.js

@@ -1,53 +0,0 @@
-import request from '@/utils/request'
-
-// 查询流程历史单列表
-export function listHis(query) {
-  return request({
-    url: '/assets/his/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询流程历史单详细
-export function getHis(instanceId) {
-  return request({
-    url: '/assets/his/' + instanceId,
-    method: 'get'
-  })
-}
-
-// 新增流程历史单
-export function addHis(data) {
-  return request({
-    url: '/assets/his',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改流程历史单
-export function updateHis(data) {
-  return request({
-    url: '/assets/his',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除流程历史单
-export function delHis(instanceId) {
-  return request({
-    url: '/assets/his/' + instanceId,
-    method: 'delete'
-  })
-}
-
-// 导出流程历史单
-export function exportHis(query) {
-  return request({
-    url: '/assets/his/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 79
src/api/assets/input.js

@@ -1,79 +0,0 @@
-import request from '@/utils/request'
-
-// 查询资产入库列表
-export function listInput(query) {
-  return request({
-    url: '/assets/input/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询资产入库详细
-export function getInput(aId) {
-  return request({
-    url: '/assets/input/' + aId,
-    method: 'get'
-  })
-}
-
-// 查询资产入库详细
-export function inputForm(aId) {
-  return request({
-    url: '/assets/input/form/' + aId,
-    method: 'get'
-  })
-}
-
-
-// 新增资产入库
-export function addInput(data) {
-  return request({
-    url: '/assets/input',
-    method: 'post',
-    data: data
-  })
-}
-
-// 提交审核
-export function commit(aId,processId) {
-  return request({
-    url: '/assets/input/commit/'+aId+'/'+processId,
-    method: 'post',
-  })
-}
-// 提交审核
-export function recommit(data) {
-  return request({
-    url: '/assets/input/recommit',
-    method: 'post',
-    data: data
-  })
-}
-
-
-// 修改资产入库
-export function updateInput(data) {
-  return request({
-    url: '/assets/input',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除资产入库
-export function delInput(aId) {
-  return request({
-    url: '/assets/input/' + aId,
-    method: 'delete'
-  })
-}
-
-// 导出资产入库
-export function exportInput(query) {
-  return request({
-    url: '/assets/input/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 53
src/api/assets/item.js

@@ -1,53 +0,0 @@
-import request from '@/utils/request'
-
-// 查询待办事项列表
-export function listItem(query) {
-  return request({
-    url: '/assets/item/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询待办事项详细
-export function getItem(id) {
-  return request({
-    url: '/assets/item/' + id,
-    method: 'get'
-  })
-}
-
-// 新增待办事项
-export function addItem(data) {
-  return request({
-    url: '/assets/item',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改待办事项
-export function updateItem(data) {
-  return request({
-    url: '/assets/item',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除待办事项
-export function delItem(id) {
-  return request({
-    url: '/assets/item/' + id,
-    method: 'delete'
-  })
-}
-
-// 导出待办事项
-export function exportItem(query) {
-  return request({
-    url: '/assets/item/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 70
src/api/assets/out.js

@@ -1,70 +0,0 @@
-import request from '@/utils/request'
-
-// 查询资产出库列表
-export function listOut(query) {
-  return request({
-    url: '/assets/out/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询资产出库详细
-export function getOut(aId) {
-  return request({
-    url: '/assets/out/' + aId,
-    method: 'get'
-  })
-}
-
-// 新增资产出库
-export function addOut(data) {
-  return request({
-    url: '/assets/out',
-    method: 'post',
-    data: data
-  })
-}
-
-// 提交审核
-export function commit(aId,processId) {
-  return request({
-    url: '/assets/out/commit/'+aId+'/'+processId,
-    method: 'post',
-  })
-}
-
-// 提交审核
-export function recommit(data) {
-  return request({
-    url: '/assets/out/recommit',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改资产出库
-export function updateOut(data) {
-  return request({
-    url: '/assets/out',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除资产出库
-export function delOut(aId) {
-  return request({
-    url: '/assets/out/' + aId,
-    method: 'delete'
-  })
-}
-
-// 导出资产出库
-export function exportOut(query) {
-  return request({
-    url: '/assets/out/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 33
src/api/assets/pendingNew.js

@@ -1,33 +0,0 @@
-import request from '@/utils/request'
-
-
-// 分页查询
-export function list(query) {
-  return request({
-    url: '/leaveNew/taskList',
-    method: 'get',
-    params: query
-  })
-}
-//审核流程表单
-export function showForms(instanceId) {
-  return request({
-    url: '/leaveNew/showForms/' + instanceId,
-    method: 'get'
-  })
-}
-// 查看
-export function get(modelKey,formKey,modelVersion) {
-  return request({
-    url: '/leaveNew/taskFormData?modelKey='+modelKey+"&formKey="+formKey+"&modelVersion="+modelVersion,
-    method: 'get',
-  })
-}
-// 提交
-export function add(data) {
-  return request({
-    url: '/leaveNew/taskCommit',
-    method: 'post',
-    data:data
-  })
-}

+ 0 - 31
src/api/assets/processedNew.js

@@ -1,31 +0,0 @@
-import request from '@/utils/request'
-
-//审核流程表单
-export function showForms(instanceId) {
-  return request({
-    url: '/leaveNew/showForms/' + instanceId,
-    method: 'get'
-  })
-}
-// 分页查询
-export function list(query) {
-  return request({
-    url: '/leaveNew/taskDoneList',
-    method: 'get',
-    params: query
-  })
-}
-
-// 删除
-export function delTitle(data) {
-  return request({
-    url: '/leaveNew',
-    method: 'delete',
-    data: data
-  })
-}
-
-
-
-
-

+ 0 - 70
src/api/assets/scrap.js

@@ -1,70 +0,0 @@
-import request from '@/utils/request'
-
-// 查询资产报废列表
-export function listScrap(query) {
-  return request({
-    url: '/assets/scrap/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询资产报废详细
-export function getScrap(aId) {
-  return request({
-    url: '/assets/scrap/' + aId,
-    method: 'get'
-  })
-}
-
-// 新增资产报废
-export function addScrap(data) {
-  return request({
-    url: '/assets/scrap',
-    method: 'post',
-    data: data
-  })
-}
-
-// 提交审核
-export function commit(aId,processId) {
-  return request({
-    url: '/assets/scrap/commit/'+aId+'/'+processId,
-    method: 'post',
-  })
-}
-
-// 提交审核
-export function recommit(data) {
-  return request({
-    url: '/assets/scrap/recommit',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改资产报废
-export function updateScrap(data) {
-  return request({
-    url: '/assets/scrap',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除资产报废
-export function delScrap(aId) {
-  return request({
-    url: '/assets/scrap/' + aId,
-    method: 'delete'
-  })
-}
-
-// 导出资产报废
-export function exportScrap(query) {
-  return request({
-    url: '/assets/scrap/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 99
src/api/assets/stock.js

@@ -1,99 +0,0 @@
-import request from '@/utils/request'
-
-// 查询库存管理列表
-export function listStock(query) {
-  return request({
-    url: '/assets/stock/list',
-    method: 'get',
-    params: query
-  })
-}
-
-
-// 查询库存管理列表
-export function selectlistStock(dbMaterielId, status) {
-  if (status == undefined) {
-    return request({
-      url: '/assets/stock/select/list?dbMaterielId=' + dbMaterielId,
-      method: 'get'
-    })
-  } else {
-    return request({
-      url: '/assets/stock/select/list?dbMaterielId=' + dbMaterielId + '&status=' + status,
-      method: 'get'
-    })
-  }
-}
-
-// 出库物质管理列表
-export function outlistStock(depId, leadUserId,status) {
-  if(undefined!=status){
-    return request({
-      url: '/assets/stock/out/list?depId=' + depId + '&leadUserId=' + leadUserId+'&status='+status,
-      method: 'get'
-    })
-  }else{
-    return request({
-      url: '/assets/stock/out/list?depId=' + depId + '&leadUserId=' + leadUserId,
-      method: 'get'
-    })
-  }
-}
-
-// 监听选择
-export function selectStockDictLabel(datas, value) {
-  var obj
-  Object.keys(datas).map((key) => {
-    if (datas[key].aId == ('' + value)) {
-      obj = datas[key]
-      return false
-    }
-  })
-  return obj
-}
-
-// 查询库存管理详细
-export function getStock(aId) {
-  return request({
-    url: '/assets/stock/' + aId,
-    method: 'get'
-  })
-}
-
-// 新增库存管理
-export function addStock(data) {
-  return request({
-    url: '/assets/stock',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改库存管理
-export function updateStock(data) {
-  return request({
-    url: '/assets/stock',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除库存管理
-export function delStock(aId) {
-  return request({
-    url: '/assets/stock/' + aId,
-    method: 'delete'
-  })
-}
-
-// 导出库存管理
-export function exportStock(query) {
-  return request({
-    url: '/assets/stock/export',
-    method: 'get',
-    params: query
-  })
-}
-
-
-

+ 1 - 1
src/api/login.js

@@ -11,7 +11,7 @@ export function login(username, password, code, uuid) {
   return request({
     url: '/login',
     method: 'post',
-    data: data
+    params: data
   })
 }
 

+ 0 - 80
src/api/monitor/job.js

@@ -1,80 +0,0 @@
-import request from '@/utils/request'
-
-// 查询定时任务调度列表
-export function listJob(query) {
-  return request({
-    url: '/monitor/job/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询定时任务调度详细
-export function getJob(jobId) {
-  return request({
-    url: '/monitor/job/' + jobId,
-    method: 'get'
-  })
-}
-
-// 新增定时任务调度
-export function addJob(data) {
-  return request({
-    url: '/monitor/job',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改定时任务调度
-export function updateJob(data) {
-  return request({
-    url: '/monitor/job',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除定时任务调度
-export function delJob(jobId) {
-  return request({
-    url: '/monitor/job/' + jobId,
-    method: 'delete'
-  })
-}
-
-// 导出定时任务调度
-export function exportJob(query) {
-  return request({
-    url: '/monitor/job/export',
-    method: 'get',
-    params: query
-  })
-}
-
-// 任务状态修改
-export function changeJobStatus(jobId, status) {
-  const data = {
-    jobId,
-    status
-  }
-  return request({
-    url: '/monitor/job/changeStatus',
-    method: 'put',
-    data: data
-  })
-}
-
-
-// 定时任务立即执行一次
-export function runJob(jobId, jobGroup) {
-  const data = {
-    jobId,
-    jobGroup
-  }
-  return request({
-    url: '/monitor/job/run',
-    method: 'put',
-    data: data
-  })
-}

+ 0 - 35
src/api/monitor/jobLog.js

@@ -1,35 +0,0 @@
-import request from '@/utils/request'
-
-// 查询调度日志列表
-export function listJobLog(query) {
-  return request({
-    url: '/monitor/jobLog/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 删除调度日志
-export function delJobLog(jobLogId) {
-  return request({
-    url: '/monitor/jobLog/' + jobLogId,
-    method: 'delete'
-  })
-}
-
-// 清空调度日志
-export function cleanJobLog() {
-  return request({
-    url: '/monitor/jobLog/clean',
-    method: 'delete'
-  })
-}
-
-// 导出调度日志
-export function exportJobLog(query) {
-  return request({
-    url: '/monitor/jobLog/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 25
src/api/monitor/logininfor.js

@@ -7,29 +7,4 @@ export function list(query) {
     method: 'get',
     params: query
   })
-}
-
-// 删除登录日志
-export function delLogininfor(infoId) {
-  return request({
-    url: '/monitor/logininfor/' + infoId,
-    method: 'delete'
-  })
-}
-
-// 清空登录日志
-export function cleanLogininfor() {
-  return request({
-    url: '/monitor/logininfor/clean',
-    method: 'delete'
-  })
-}
-
-// 导出登录日志
-export function exportLogininfor(query) {
-  return request({
-    url: '/monitor/logininfor/export',
-    method: 'get',
-    params: query
-  })
 }

+ 0 - 25
src/api/monitor/operlog.js

@@ -7,29 +7,4 @@ export function list(query) {
     method: 'get',
     params: query
   })
-}
-
-// 删除操作日志
-export function delOperlog(operId) {
-  return request({
-    url: '/monitor/operlog/' + operId,
-    method: 'delete'
-  })
-}
-
-// 清空操作日志
-export function cleanOperlog() {
-  return request({
-    url: '/monitor/operlog/clean',
-    method: 'delete'
-  })
-}
-
-// 导出操作日志
-export function exportOperlog(query) {
-  return request({
-    url: '/monitor/operlog/export',
-    method: 'get',
-    params: query
-  })
 }

+ 0 - 9
src/api/system/config.js

@@ -49,13 +49,4 @@ export function delConfig(configId) {
     url: '/system/config/' + configId,
     method: 'delete'
   })
-}
-
-// 导出参数
-export function exportConfig(query) {
-  return request({
-    url: '/system/config/export',
-    method: 'get',
-    params: query
-  })
 }

+ 1 - 17
src/api/system/dept.js

@@ -25,22 +25,6 @@ export function treeselect() {
   })
 }
 
-// 查询部门下拉树结构
-export function treeselectAll() {
-  return request({
-    url: '/system/dept/treeselect/all',
-    method: 'get'
-  })
-}
-
-// 查询部门下拉树结构
-export function assetsTreeselect() {
-  return request({
-    url: '/system/dept/assets/treeselect',
-    method: 'get'
-  })
-}
-
 // 根据角色ID查询部门树结构
 export function roleDeptTreeselect(roleId) {
   return request({
@@ -73,4 +57,4 @@ export function delDept(deptId) {
     url: '/system/dept/' + deptId,
     method: 'delete'
   })
-}
+}

+ 0 - 9
src/api/system/dict/data.js

@@ -49,13 +49,4 @@ export function delData(dictCode) {
     url: '/system/dict/data/' + dictCode,
     method: 'delete'
   })
-}
-
-// 导出字典数据
-export function exportData(query) {
-  return request({
-    url: '/system/dict/data/export',
-    method: 'get',
-    params: query
-  })
 }

+ 0 - 17
src/api/system/dict/type.js

@@ -42,20 +42,3 @@ export function delType(dictId) {
     method: 'delete'
   })
 }
-
-// 导出字典类型
-export function exportType(query) {
-  return request({
-    url: '/system/dict/type/export',
-    method: 'get',
-    params: query
-  })
-}
-
-// 获取字典选择框列表
-export function optionselect() {
-  return request({
-    url: '/system/dict/type/optionselect',
-    method: 'get'
-  })
-}

+ 0 - 59
src/api/system/materiel.js

@@ -1,59 +0,0 @@
-import request from '@/utils/request'
-
-// 查询物料列表
-export function listMateriel(query) {
-  return request({
-    url: '/system/materiel/list',
-    method: 'get',
-    params: query
-  })
-}
-// 查询物料列表
-export function treelist() {
-  return request({
-    url: '/system/materiel/tree/list',
-    method: 'get',
-  })
-}
-// 查询物料详细
-export function getMateriel(mId) {
-  return request({
-    url: '/system/materiel/' + mId,
-    method: 'get'
-  })
-}
-
-// 新增物料
-export function addMateriel(data) {
-  return request({
-    url: '/system/materiel',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改物料
-export function updateMateriel(data) {
-  return request({
-    url: '/system/materiel',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除物料
-export function delMateriel(mId) {
-  return request({
-    url: '/system/materiel/' + mId,
-    method: 'delete'
-  })
-}
-
-// 导出物料
-export function exportMateriel(query) {
-  return request({
-    url: '/system/materiel/export',
-    method: 'get',
-    params: query
-  })
-}

+ 0 - 9
src/api/system/post.js

@@ -41,13 +41,4 @@ export function delPost(postId) {
     url: '/system/post/' + postId,
     method: 'delete'
   })
-}
-
-// 导出岗位
-export function exportPost(query) {
-  return request({
-    url: '/system/post/export',
-    method: 'get',
-    params: query
-  })
 }

+ 0 - 9
src/api/system/role.js

@@ -63,13 +63,4 @@ export function delRole(roleId) {
     url: '/system/role/' + roleId,
     method: 'delete'
   })
-}
-
-// 导出角色
-export function exportRole(query) {
-  return request({
-    url: '/system/role/export',
-    method: 'get',
-    params: query
-  })
 }

+ 0 - 61
src/api/system/supplier.js

@@ -1,61 +0,0 @@
-import request from '@/utils/request'
-
-// 查询供应商列表
-export function listSupplier(query) {
-  return request({
-    url: '/system/supplier/list',
-    method: 'get',
-    params: query
-  })
-}
-// 查询供应商列表
-export function select() {
-  return request({
-    url: '/system/supplier/select/list',
-    method: 'get',
-  })
-}
-
-
-// 查询供应商详细
-export function getSupplier(sId) {
-  return request({
-    url: '/system/supplier/' + sId,
-    method: 'get'
-  })
-}
-
-// 新增供应商
-export function addSupplier(data) {
-  return request({
-    url: '/system/supplier',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改供应商
-export function updateSupplier(data) {
-  return request({
-    url: '/system/supplier',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除供应商
-export function delSupplier(sId) {
-  return request({
-    url: '/system/supplier/' + sId,
-    method: 'delete'
-  })
-}
-
-// 导出供应商
-export function exportSupplier(query) {
-  return request({
-    url: '/system/supplier/export',
-    method: 'get',
-    params: query
-  })
-}

+ 2 - 28
src/api/system/user.js

@@ -1,5 +1,4 @@
 import request from '@/utils/request'
-import { praseStrEmpty } from "@/utils/ruoyi";
 
 // 查询用户列表
 export function listUser(query) {
@@ -10,18 +9,10 @@ export function listUser(query) {
   })
 }
 
-// 查询用户列表
-export function selectlist(depId) {
-  return request({
-    url: '/system/user/select/list?depId='+depId,
-    method: 'get',
-  })
-}
-
 // 查询用户详细
 export function getUser(userId) {
   return request({
-    url: '/system/user/' + praseStrEmpty(userId),
+    url: '/system/user/' + userId,
     method: 'get'
   })
 }
@@ -52,15 +43,6 @@ export function delUser(userId) {
   })
 }
 
-// 导出用户
-export function exportUser(query) {
-  return request({
-    url: '/system/user/export',
-    method: 'get',
-    params: query
-  })
-}
-
 // 用户密码重置
 export function resetUserPwd(userId, password) {
   const data = {
@@ -124,12 +106,4 @@ export function uploadAvatar(data) {
     method: 'post',
     data: data
   })
-}
-
-// 下载用户导入模板
-export function importTemplate() {
-  return request({
-    url: '/system/user/importTemplate',
-    method: 'get'
-  })
-}
+}

+ 0 - 59
src/api/tool/gen.js

@@ -1,59 +0,0 @@
-import request from '@/utils/request'
-
-// 查询生成表数据
-export function listTable(query) {
-  return request({
-    url: '/tool/gen/list',
-    method: 'get',
-    params: query
-  })
-}
-// 查询db数据库列表
-export function listDbTable(query) {
-  return request({
-    url: '/tool/gen/db/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询表详细信息
-export function getGenTable(tableId) {
-  return request({
-    url: '/tool/gen/' + tableId,
-    method: 'get'
-  })
-}
-
-// 修改代码生成信息
-export function updateGenTable(data) {
-  return request({
-    url: '/tool/gen',
-    method: 'put',
-    data: data
-  })
-}
-
-// 导入表
-export function importTable(data) {
-  return request({
-    url: '/tool/gen/importTable',
-    method: 'post',
-    params: data
-  })
-}
-// 预览生成代码
-export function previewTable(tableId) {
-  return request({
-    url: '/tool/gen/preview/' + tableId,
-    method: 'get'
-  })
-}
-// 删除表数据
-export function delTable(tableId) {
-  return request({
-    url: '/tool/gen/' + tableId,
-    method: 'delete'
-  })
-}
-

文件差異過大導致無法顯示
+ 0 - 0
src/assets/icons/svg/cascader.svg


+ 0 - 1
src/assets/icons/svg/checkbox.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1575982282951" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="902" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M828.40625 90.125H195.59375C137.375 90.125 90.125 137.375 90.125 195.59375v632.8125c0 58.21875 47.25 105.46875 105.46875 105.46875h632.8125c58.21875 0 105.46875-47.25 105.46875-105.46875V195.59375c0-58.21875-47.25-105.46875-105.46875-105.46875z m52.734375 738.28125c0 29.16-23.57015625 52.734375-52.734375 52.734375H195.59375c-29.109375 0-52.734375-23.574375-52.734375-52.734375V195.59375c0-29.109375 23.625-52.734375 52.734375-52.734375h632.8125c29.16 0 52.734375 23.625 52.734375 52.734375v632.8125z" p-id="903"></path><path d="M421.52890625 709.55984375a36.28125 36.28125 0 0 1-27.55265625-12.66890625L205.17453125 476.613125a36.28546875 36.28546875 0 0 1 55.10109375-47.22890625l164.986875 192.4846875 342.16171875-298.48078125a36.2896875 36.2896875 0 0 1 47.70984375 54.68765625L445.3859375 700.6203125a36.3234375 36.3234375 0 0 1-23.85703125 8.93953125z" p-id="904"></path></svg>

文件差異過大導致無法顯示
+ 0 - 0
src/assets/icons/svg/color.svg


文件差異過大導致無法顯示
+ 0 - 0
src/assets/icons/svg/component.svg


文件差異過大導致無法顯示
+ 0 - 0
src/assets/icons/svg/date-range.svg


文件差異過大導致無法顯示
+ 0 - 0
src/assets/icons/svg/date.svg


+ 0 - 1
src/assets/icons/svg/github.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1581238998885" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4187" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M511.542857 14.057143C228.914286 13.942857 0 242.742857 0 525.142857 0 748.457143 143.2 938.285714 342.628571 1008c26.857143 6.742857 22.742857-12.342857 22.742858-25.371429v-88.571428c-155.085714 18.171429-161.371429-84.457143-171.771429-101.6C172.571429 756.571429 122.857143 747.428571 137.714286 730.285714c35.314286-18.171429 71.314286 4.571429 113.028571 66.171429 30.171429 44.685714 89.028571 37.142857 118.857143 29.714286 6.514286-26.857143 20.457143-50.857143 39.657143-69.485715-160.685714-28.8-227.657143-126.857143-227.657143-243.428571 0-56.571429 18.628571-108.571429 55.2-150.514286-23.314286-69.142857 2.171429-128.342857 5.6-137.142857 66.4-5.942857 135.428571 47.542857 140.8 51.771429 37.714286-10.171429 80.8-15.542857 129.028571-15.542858 48.457143 0 91.657143 5.6 129.714286 15.885715 12.914286-9.828571 76.914286-55.771429 138.628572-50.171429 3.314286 8.8 28.228571 66.628571 6.285714 134.857143 37.028571 42.057143 55.885714 94.514286 55.885714 151.2 0 116.8-67.428571 214.971429-228.571428 243.314286a145.714286 145.714286 0 0 1 43.542857 104v128.571428c0.914286 10.285714 0 20.457143 17.142857 20.457143 202.4-68.228571 348.114286-259.428571 348.114286-484.685714 0-282.514286-229.028571-511.2-511.428572-511.2z" p-id="4188"></path></svg>

+ 0 - 1
src/assets/icons/svg/input.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1575802859706" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3102" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M896 224H128c-35.2 0-64 28.8-64 64v448c0 35.2 28.8 64 64 64h768c35.2 0 64-28.8 64-64V288c0-35.2-28.8-64-64-64z m0 480c0 19.2-12.8 32-32 32H160c-19.2 0-32-12.8-32-32V320c0-19.2 12.8-32 32-32h704c19.2 0 32 12.8 32 32v384z" p-id="3103"></path><path d="M224 352c-19.2 0-32 12.8-32 32v256c0 16 12.8 32 32 32s32-12.8 32-32V384c0-16-12.8-32-32-32z" p-id="3104"></path></svg>

文件差異過大導致無法顯示
+ 0 - 0
src/assets/icons/svg/number.svg


+ 1 - 1
src/assets/icons/svg/password.svg

@@ -1 +1 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1575802846045" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2750" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M868.593046 403.832442c-30.081109-28.844955-70.037123-44.753273-112.624057-44.753273L265.949606 359.079168c-42.554188 0-82.510202 15.908318-112.469538 44.690852-30.236652 28.782533-46.857191 67.222007-46.857191 108.198258l0 294.079782c0 40.977273 16.619516 79.414701 46.702672 108.136859 29.959336 28.844955 70.069869 44.814672 112.624057 44.814672l490.019383 0c42.585911 0 82.696444-15.969717 112.624057-44.814672 30.082132-28.844955 46.579875-67.222007 46.579875-108.136859L915.172921 511.968278C915.171897 471.053426 898.675178 432.677397 868.593046 403.832442zM841.821309 806.049083c0 22.098297-8.882298 42.772152-25.099654 58.306964-16.154935 15.661701-37.81935 24.203238-60.752666 24.203238L265.949606 888.559285c-22.934339 0-44.567032-8.54256-60.877509-24.264637-16.186657-15.474436-25.067932-36.148291-25.067932-58.246589L180.004165 511.968278c0-22.035876 8.881274-42.772152 25.192775-58.307987 16.186657-15.536858 37.81935-24.139793 60.753689-24.139793l490.019383 0c22.933315 0 44.597731 8.602935 60.752666 24.139793 16.21838 15.535835 25.099654 36.272112 25.099654 58.307987L841.822332 806.049083zM510.974136 135.440715c114.914216 0 208.318536 89.75214 208.318536 200.055338l73.350588 0c0-149.113109-126.366036-270.496667-281.669124-270.496667-155.333788 0-281.699824 121.383558-281.699824 270.496667l73.350588 0C302.623877 225.193879 396.059919 135.440715 510.974136 135.440715zM474.299865 747.244792l73.350588 0L547.650453 629.576859l-73.350588 0L474.299865 747.244792z" p-id="2751"></path></svg>
+<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M108.8 44.322H89.6v-5.36c0-9.04-3.308-24.163-25.6-24.163-23.145 0-25.6 16.881-25.6 24.162v5.361H19.2v-5.36C19.2 15.281 36.798 0 64 0c27.202 0 44.8 15.281 44.8 38.961v5.361zm-32 39.356c0-5.44-5.763-9.832-12.8-9.832-7.037 0-12.8 4.392-12.8 9.832 0 3.682 2.567 6.808 6.407 8.477v11.205c0 2.718 2.875 4.962 6.4 4.962 3.524 0 6.4-2.244 6.4-4.962V92.155c3.833-1.669 6.393-4.795 6.393-8.477zM128 64v49.201c0 8.158-8.645 14.799-19.2 14.799H19.2C8.651 128 0 121.359 0 113.201V64c0-8.153 8.645-14.799 19.2-14.799h89.6c10.555 0 19.2 6.646 19.2 14.799z"/></svg>

+ 0 - 1
src/assets/icons/svg/question.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1581238842264" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1409" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M512 0C229.233778 0 0 229.233778 0 512s229.233778 512 512 512 512-229.233778 512-512A512 512 0 0 0 512 0z m0 938.666667C276.366222 938.666667 85.333333 747.633778 85.333333 512 85.333333 276.366222 276.366222 85.333333 512 85.333333c235.633778 0 426.666667 191.032889 426.666667 426.666667a426.666667 426.666667 0 0 1-426.666667 426.666667z m0-717.653334a170.666667 170.666667 0 0 0-170.666667 170.666667 42.666667 42.666667 0 0 0 85.333334 0 85.333333 85.333333 0 1 1 85.333333 85.333333 42.666667 42.666667 0 0 0-42.666667 42.666667v111.36a42.666667 42.666667 0 0 0 85.333334 0v-74.24A170.666667 170.666667 0 0 0 512 221.013333z m-42.666667 542.293334a42.666667 42.666667 0 1 0 85.333334 0 42.666667 42.666667 0 0 0-85.333334 0z" p-id="1410"></path></svg>

+ 0 - 1
src/assets/icons/svg/radio.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1575966775973" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="879" xmlns:xlink="http://www.w3.org/1999/xlink" width="81" height="81"><defs><style type="text/css"></style></defs><path d="M507.39346659 71.84873358c241.53533667 0 437.39770766 195.85422109 437.39770767 437.37442191 0 241.53766571-195.86237099 437.38955776-437.39770767 437.38955776-241.50040803 0-437.34997219-195.85189205-437.34997219-437.38955776C70.0434944 267.70295467 265.89189347 71.84873358 507.39346659 71.84873358L507.39346659 71.84873358zM507.39346659 282.81899805c-125.00686734 0-226.37039389 101.38914133-226.37039388 226.41813048 0 125.01268821 101.36352768 226.39717262 226.37039388 226.39717262 125.04295993 0 226.42395136-101.38448441 226.42395136-226.39717262C733.81625401 384.20813938 632.43642653 282.81899805 507.39346659 282.81899805L507.39346659 282.81899805zM507.39346659 120.78172615c-214.46664192 0-388.42047261 173.95150279-388.4204726 388.44026539 0 214.51204949 173.95499463 388.46122325 388.4204726 388.46122325 214.52369237 0 388.46005817-173.94800981 388.46005818-388.46122325C895.85236082 294.73322894 721.91715897 120.78172615 507.39346659 120.78172615z" p-id="880"></path></svg>

+ 0 - 1
src/assets/icons/svg/rate.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1577246781606" class="icon" viewBox="0 0 1069 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1098" xmlns:xlink="http://www.w3.org/1999/xlink" width="84.5595703125" height="81"><defs><style type="text/css"></style></defs><path d="M633.72929961 378.02038203l9.49872568 18.68789795 20.78025469 2.79745225 206.61592412 27.33248408a11.46496817 11.46496817 0 0 1 6.6095543 19.47324902l-147.2675168 147.35350284-14.89299345 14.89299345 3.8006376 20.68280244 37.84585956 204.89044571a11.46496817 11.46496817 0 0 1-16.4808914 12.2961788L554.68980898 751.84713388l-18.68789794-9.49299345-18.48726123 9.99171915-183.23885392 99.34968163a11.46496817 11.46496817 0 0 1-16.78471347-11.8662416l32.5433127-205.79617881 3.29617793-20.78598692-15.19108243-14.49172002-151.03375839-143.48407587a11.46496817 11.46496817 0 0 1 6.09936328-19.63949062l205.79617881-32.63503185 20.78598691-3.2961788L428.87898125 380.72038203 518.59235674 192.64331182a11.46496817 11.46496817 0 0 1 20.56815264-0.26369385l94.56879023 185.63503183zM496.64840732 85.52038203l-121.75796162 254.98089229L95.76433145 384.76178369A34.3949045 34.3949045 0 0 0 77.46050938 443.66879023l204.87324901 194.66369385-44.16879023 279.1146498a34.3949045 34.3949045 0 0 0 50.36560489 35.61592325l248.4-134.67898038 251.84522285 128.27579591a34.3949045 34.3949045 0 0 0 49.43694287-36.89426777l-51.30573223-277.85350284 199.73120977-199.90891758a34.3949045 34.3949045 0 0 0-19.82866201-58.40827998l-280.11783428-37.03184736L558.32993633 84.71210205a34.3949045 34.3949045 0 0 0-61.68152901 0.80254775z" p-id="1099"></path></svg>

+ 0 - 1
src/assets/icons/svg/row.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1579339929870" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1182" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M152 854.856875h325.7146875V237.715625H134.856875v600q0 6.99375 5.0746875 12.0684375T152 854.856875z m737.143125-17.1421875v-600H546.284375v617.1421875H872q6.99375 0 12.0684375-5.07375t5.0746875-12.0684375z m68.5715625-651.429375V837.715625q0 35.3821875-25.16625 60.5484375T872 923.4284375H152q-35.383125 0-60.5484375-25.1653125T66.284375 837.7146875V186.284375q0-35.3821875 25.16625-60.5484375T152 100.5715625h720q35.383125 0 60.5484375 25.1653125t25.16625 60.5484375z" p-id="1183"></path></svg>

+ 0 - 1
src/assets/icons/svg/select.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1575803481213" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="804" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M62 511.97954521C62 263.86590869 263.90681826 62 511.97954521 62s449.97954521 201.825 449.97954521 449.97954521c0 248.19545479-201.90681826 449.97954521-449.97954521 449.97954521C263.90681826 962 62 760.175 62 511.97954521M901.98636348 511.97954521c0-215.24318174-175.00909131-390.41590869-390.00681827-390.41590869-215.03863652 0-389.96590869 175.17272695-389.96590868 390.41590869 0 215.28409131 175.00909131 390.45681826 389.96590868 390.45681826C727.01818174 902.47727305 901.98636348 727.30454521 901.98636348 511.97954521M264.17272695 430.28409131c0-5.76818174 2.12727305-11.51590869 6.64772696-15.87272696 8.71363652-8.75454521 22.88863652-8.75454521 31.725 0l209.4340913 208.22727305L721.45454521 414.53409131c8.75454521-8.71363652 22.97045479-8.71363652 31.90909132 0 8.71363652 8.75454521 8.71363652 22.88863652 0 31.60227304L511.97954521 685.74090869 270.71818174 446.01363653C266.27954521 441.77954521 264.17272695 436.05227305 264.17272695 430.28409131" p-id="805"></path></svg>

+ 0 - 1
src/assets/icons/svg/slider.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1577185310368" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1238" xmlns:xlink="http://www.w3.org/1999/xlink" width="81" height="81"><defs><style type="text/css"></style></defs><path d="M951.453125 476.84375H523.671875a131.8359375 131.8359375 0 0 0-254.1796875 0H72.546875v70.3125h196.9453125a131.8359375 131.8359375 0 0 0 254.1796875 0H951.453125z" p-id="1239"></path></svg>

+ 0 - 1
src/assets/icons/svg/switch.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1576042673958" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1110" xmlns:xlink="http://www.w3.org/1999/xlink" width="81" height="81"><defs><style type="text/css"></style></defs><path d="M692 792H332c-150 0-270-120-270-270s120-270 270-270h360c150 0 270 120 270 270 0 147-120 270-270 270zM332 312c-117 0-210 93-210 210s93 210 210 210h360c117 0 210-93 210-210s-93-210-210-210H332z" p-id="1111"></path><path d="M341 522m-150 0a150 150 0 1 0 300 0 150 150 0 1 0-300 0Z" p-id="1112"></path></svg>

+ 0 - 1
src/assets/icons/svg/textarea.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1575802855098" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2984" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M896 160H128c-35.2 0-64 28.8-64 64v576c0 35.2 28.8 64 64 64h768c35.2 0 64-28.8 64-64V224c0-35.2-28.8-64-64-64z m0 608c0 16-12.8 32-32 32H160c-19.2 0-32-12.8-32-32V256c0-16 12.8-32 32-32h704c19.2 0 32 12.8 32 32v512z" p-id="2985"></path><path d="M224 288c-19.2 0-32 12.8-32 32v256c0 16 12.8 32 32 32s32-12.8 32-32V320c0-16-12.8-32-32-32z m608 480c19.2 0 32-12.8 32-32V608L704 768h128z" p-id="2986"></path></svg>

文件差異過大導致無法顯示
+ 0 - 0
src/assets/icons/svg/time-range.svg


+ 0 - 1
src/assets/icons/svg/time.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1577099827399" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1008" xmlns:xlink="http://www.w3.org/1999/xlink" width="81" height="81"><defs><style type="text/css"></style></defs><path d="M520 559h204c17.673 0 32 14.327 32 32 0 17.673-14.327 32-32 32H488c-17.673 0-32-14.327-32-32 0-0.167 0.001-0.334 0.004-0.5a32.65 32.65 0 0 1-0.004-0.5V277c0-17.673 14.327-32 32-32 17.673 0 32 14.327 32 32v282z m-8 401C264.576 960 64 759.424 64 512S264.576 64 512 64s448 200.576 448 448-200.576 448-448 448z m0-64c212.077 0 384-171.923 384-384S724.077 128 512 128 128 299.923 128 512s171.923 384 384 384z" p-id="1009"></path></svg>

+ 0 - 1
src/assets/icons/svg/upload.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1577540289643" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7922" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M530.944 458.24l4.8 3.456 122.176 106.816a32 32 0 0 1-37.44 51.584l-4.672-3.392L546.56 556.16v280.704a32 32 0 0 1-26.24 31.488l-5.76 0.512a32 32 0 0 1-31.424-26.24l-0.512-5.76-0.064-280.704-69.12 60.48a32 32 0 0 1-40.96 0.896l-4.16-3.968a32 32 0 0 1-0.96-40.96l4.032-4.16 122.176-106.816a32 32 0 0 1 37.312-3.456zM497.92 128c128.128 0 239.168 82.304 275.52 199.04 123.968 11.264 221.312 113.088 221.312 237.44 0 128.128-103.68 232.96-234.88 238.272h-5.888l-35.52 0.192a32 32 0 0 1-0.192-64l35.264-0.128 4.672-0.064c96.384-3.84 172.544-80.896 172.544-174.272 0-96.128-80.512-174.464-179.584-174.464h-1.984a32 32 0 0 1-32-25.28C695.872 264.96 604.736 192 497.92 192 381.824 192 285.44 277.76 274.816 388.48a32 32 0 0 1-28.352 28.8c-83.968 9.152-147.84 78.208-147.84 159.552l0.192 7.936c3.84 85.76 77.056 154.112 166.592 154.112h45.632a32 32 0 0 1 0 64h-45.632C142.016 802.944 40.32 708.032 34.88 586.88l-0.192-9.28c0-106.88 76.352-197.184 179.968-219.904C239.488 226.112 357.76 128 497.856 128z" p-id="7923"></path></svg>

+ 0 - 5
src/assets/styles/element-ui.scss

@@ -77,8 +77,3 @@
 .el-range-editor.el-input__inner {
   display: inline-flex !important;
 }
-
-// to fix el-date-picker css style
-.el-range-separator {
-  box-sizing: content-box;
-}

+ 0 - 71
src/assets/styles/ruoyi.scss

@@ -3,60 +3,6 @@
  * Copyright (c) 2019 ruoyi
  */
 
- /** 基础通用 **/
-.pt5 {
-	padding-top: 5px;
-}
-.pr5 {
-	padding-right: 5px;
-}
-.pb5 {
-	padding-bottom: 5px;
-}
-.mt5 {
-	margin-top: 5px;
-}
-.mr5 {
-	margin-right: 5px;
-}
-.mb5 {
-	margin-bottom: 5px;
-}
-.mb8 {
-	margin-bottom: 8px;
-}
-.ml5 {
-	margin-left: 5px;
-}
-.mt10 {
-	margin-top: 10px;
-}
-.mr10 {
-	margin-right: 10px;
-}
-.mb10 {
-	margin-bottom: 10px;
-}
-.ml0 {
-	margin-left: 10px;
-}
-.mt20 {
-	margin-top: 20px;
-}
-.mr20 {
-	margin-right: 20px;
-}
-.mb20 {
-	margin-bottom: 20px;
-}
-.m20 {
-	margin-left: 20px;
-}
-
-.el-dialog {
-	margin-top: 6vh !important;
-}
-
 .el-table .el-table__header-wrapper th {
 	word-break: break-word;
 	background-color: #f8f8f9;
@@ -65,16 +11,6 @@
 	font-size: 13px;
 }
 
-/** 表单布局 **/
-.form-header {
-    font-size:15px;
-	color:#6379bb;
-	border-bottom:1px solid #ddd;
-	margin:8px 10px 25px 10px;
-	padding-bottom:5px
-}
-
-/** 表格布局 **/
 .pagination-container {
 	position: relative;
 	height: 25px;
@@ -187,11 +123,4 @@
 	border-radius: 50%;
 	box-shadow: 0 0 4px #ccc;
 	overflow: hidden;
-}
-
-/* 拖拽列样式 */
-.sortable-ghost{
-	opacity: .8;
-	color: #fff!important;
-	background: #42b983!important;
 }

+ 1 - 1
src/components/Editor/index.vue

@@ -149,7 +149,7 @@ export default {
   line-height: normal !important;
   height: 192px;
 }
-.quill-img {
+.el-upload {
   display: none;
 }
 .ql-snow .ql-tooltip[data-mode="link"]::before {

+ 0 - 21
src/components/RuoYi/Doc/index.vue

@@ -1,21 +0,0 @@
-<template>
-  <div>
-    <svg-icon icon-class="question" @click="goto"/>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'RuoYiDoc',
-  data() {
-    return {
-      url: 'http://doc.ruoyi.vip/ruoyi-vue'
-    }
-  },
-  methods: {
-    goto() {
-      window.open(this.url)
-    }
-  }
-}
-</script>

+ 0 - 21
src/components/RuoYi/Git/index.vue

@@ -1,21 +0,0 @@
-<template>
-  <div>
-    <svg-icon icon-class="github" @click="goto"/>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'RuoYiGit',
-  data() {
-    return {
-      url: 'https://gitee.com/y_project/RuoYi-Vue'
-    }
-  },
-  methods: {
-    goto() {
-      window.open(this.url)
-    }
-  }
-}
-</script>

+ 1 - 1
src/components/SizeSelect/index.vue

@@ -35,7 +35,7 @@ export default {
       this.$store.dispatch('app/setSize', size)
       this.refreshView()
       this.$message({
-        message: ' Size Success',
+        message: 'Switch Size Success',
         type: 'success'
       })
     },

+ 1 - 1
src/components/SvgIcon/index.vue

@@ -1,7 +1,7 @@
 <template>
   <div v-if="isExternal" :style="styleExternalIcon" class="svg-external-icon svg-icon" v-on="$listeners" />
   <svg v-else :class="svgClass" aria-hidden="true" v-on="$listeners">
-    <use :href="iconName" />
+    <use :xlink:href="iconName" />
   </svg>
 </template>
 

+ 10 - 16
src/layout/components/Navbar.vue

@@ -6,16 +6,12 @@
 
     <div class="right-menu">
       <template v-if="device!=='mobile'">
-        <!--<search id="header-search" class="right-menu-item" />
-
-        <el-tooltip content="源码地址" effect="dark" placement="bottom">
-          <ruo-yi-git id="ruoyi-git" class="right-menu-item hover-effect" />
+        <search id="header-search" class="right-menu-item" />
+        
+        <el-tooltip content="下载源码" effect="dark" placement="bottom">
+          <ruo-yi id="ruoyi" class="right-menu-item hover-effect" />
         </el-tooltip>
 
-        <el-tooltip content="文档地址" effect="dark" placement="bottom">
-          <ruo-yi-doc id="ruoyi-doc" class="right-menu-item hover-effect" />
-        </el-tooltip>-->
-
         <screenfull id="screenfull" class="right-menu-item hover-effect" />
 
         <el-tooltip content="布局大小" effect="dark" placement="bottom">
@@ -33,11 +29,11 @@
           <router-link to="/user/profile">
             <el-dropdown-item>个人中心</el-dropdown-item>
           </router-link>
-          <el-dropdown-item @click.native="setting = true">
-            <span>布局设置</span>
+          <el-dropdown-item>
+            <span @click="setting = true">布局设置</span>
           </el-dropdown-item>
-          <el-dropdown-item divided @click.native="logout">
-            <span>退出登录</span>
+          <el-dropdown-item divided>
+            <span @click="logout">退出登录</span>
           </el-dropdown-item>
         </el-dropdown-menu>
       </el-dropdown>
@@ -52,8 +48,7 @@ import Hamburger from '@/components/Hamburger'
 import Screenfull from '@/components/Screenfull'
 import SizeSelect from '@/components/SizeSelect'
 import Search from '@/components/HeaderSearch'
-import RuoYiGit from '@/components/RuoYi/Git'
-import RuoYiDoc from '@/components/RuoYi/Doc'
+import RuoYi from '@/components/RuoYi'
 
 export default {
   components: {
@@ -62,8 +57,7 @@ export default {
     Screenfull,
     SizeSelect,
     Search,
-    RuoYiGit,
-    RuoYiDoc
+    RuoYi
   },
   computed: {
     ...mapGetters([

+ 4 - 4
src/layout/components/Settings/index.vue

@@ -10,17 +10,17 @@
 
       <div class="drawer-item">
         <span>开启 Tags-Views</span>
-        <el- v-model="tagsView" class="drawer-" />
+        <el-switch v-model="tagsView" class="drawer-switch" />
       </div>
 
       <div class="drawer-item">
         <span>固定 Header</span>
-        <el- v-model="fixedHeader" class="drawer-" />
+        <el-switch v-model="fixedHeader" class="drawer-switch" />
       </div>
 
       <div class="drawer-item">
         <span>显示 Logo</span>
-        <el- v-model="sidebarLogo" class="drawer-" />
+        <el-switch v-model="sidebarLogo" class="drawer-switch" />
       </div>
 
     </div>
@@ -101,7 +101,7 @@ export default {
     padding: 12px 0;
   }
 
-  .drawer- {
+  .drawer-switch {
     float: right
   }
 }

+ 1 - 1
src/layout/components/Sidebar/Logo.vue

@@ -26,7 +26,7 @@ export default {
   },
   data() {
     return {
-      title: '综合运维服务系统',
+      title: '若依管理系统',
       logo: logoImg
     }
   }

+ 1 - 1
src/layout/components/Sidebar/SidebarItem.vue

@@ -1,5 +1,5 @@
 <template>
-  <div v-if="!item.hidden">
+  <div v-if="!item.hidden" class="menu-wrapper">
     <template v-if="hasOneShowingChild(item.children,item) && (!onlyOneChild.children||onlyOneChild.noShowingChildren)&&!item.alwaysShow">
       <app-link v-if="onlyOneChild.meta" :to="resolvePath(onlyOneChild.path)">
         <el-menu-item :index="resolvePath(onlyOneChild.path)" :class="{'submenu-title-noDropdown':!isNest}">

+ 4 - 7
src/layout/components/TagsView/index.vue

@@ -9,16 +9,16 @@
         :to="{ path: tag.path, query: tag.query, fullPath: tag.fullPath }"
         tag="span"
         class="tags-view-item"
-        @click.middle.native="!isAffix(tag)?closeSelectedTag(tag):''"
+        @click.middle.native="closeSelectedTag(tag)"
         @contextmenu.prevent.native="openMenu(tag,$event)"
       >
         {{ tag.title }}
-        <span v-if="!isAffix(tag)" class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" />
+        <span v-if="!tag.meta.affix" class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" />
       </router-link>
     </scroll-pane>
     <ul v-show="visible" :style="{left:left+'px',top:top+'px'}" class="contextmenu">
       <li @click="refreshSelectedTag(selectedTag)">刷新页面</li>
-      <li v-if="!isAffix(selectedTag)" @click="closeSelectedTag(selectedTag)">关闭当前</li>
+      <li v-if="!(selectedTag.meta&&selectedTag.meta.affix)" @click="closeSelectedTag(selectedTag)">关闭当前</li>
       <li @click="closeOthersTags">关闭其他</li>
       <li @click="closeAllTags(selectedTag)">关闭所有</li>
     </ul>
@@ -69,9 +69,6 @@ export default {
     isActive(route) {
       return route.path === this.$route.path
     },
-    isAffix(tag) {
-      return tag.meta && tag.meta.affix
-    },
     filterAffixTags(routes, basePath = '/') {
       let tags = []
       routes.forEach(route => {
@@ -158,7 +155,7 @@ export default {
     toLastView(visitedViews, view) {
       const latestView = visitedViews.slice(-1)[0]
       if (latestView) {
-        this.$router.push(latestView.fullPath)
+        this.$router.push(latestView)
       } else {
         // now the default is to redirect to the home page if there is no tags-view,
         // you can adjust it according to your needs.

+ 54 - 52
src/main.js

@@ -16,11 +16,10 @@ import permission from './directive/permission'
 
 import './assets/icons' // icon
 import './permission' // permission control
-import { getDicts } from "@/api/system/dict/data";
-import { getConfigKey } from "@/api/system/config";
-import { formDate,formDateTime,parseTime, resetForm, addDateRange, selectDictLabel,selectFormat,containData, download, handleTree } from "@/utils/ruoyi";
-import Pagination from "@/components/Pagination";
-
+import { getDicts } from '@/api/system/dict/data'
+import { getConfigKey } from '@/api/system/config'
+import { parseTime, resetForm, addDateRange, selectDictLabel } from '@/utils/ruoyi'
+import Pagination from '@/components/Pagination'
 /**
  * 表单设计
  */
@@ -31,36 +30,40 @@ import EleFormImageUploader from 'vue-ele-form-image-uploader'
 import VJsoneditor from 'v-jsoneditor'
 
 
+import axios from 'axios'
+
+axios.interceptors.response.use(response => {
+  let data = response.data
+  console.log(data)
+  // 将响应结果返回
+  return data;
+})
+Vue.prototype.$axios = axios
+
+
+
 // 全局方法挂载
 Vue.prototype.getDicts = getDicts
 Vue.prototype.getConfigKey = getConfigKey
-Vue.prototype.formDate = formDate
-Vue.prototype.formDateTime = formDateTime
-Vue.prototype.selectFormat = selectFormat
 Vue.prototype.parseTime = parseTime
 Vue.prototype.resetForm = resetForm
 Vue.prototype.addDateRange = addDateRange
 Vue.prototype.selectDictLabel = selectDictLabel
-Vue.prototype.download = download
-Vue.prototype.handleTree = handleTree
-Vue.prototype.containData = containData
-
 
-Vue.prototype.msgSuccess = function (msg) {
-  this.$message({ showClose: true, message: msg, type: "success" });
+Vue.prototype.msgSuccess = function(msg) {
+  this.$message({ showClose: true, message: msg, type: 'success' })
 }
 
-Vue.prototype.msgError = function (msg) {
-  this.$message({ showClose: true, message: msg, type: "error" });
+Vue.prototype.msgError = function(msg) {
+  this.$message({ showClose: true, message: msg, type: 'error' })
 }
 
-Vue.prototype.msgInfo = function (msg) {
-  this.$message.info(msg);
+Vue.prototype.msgInfo = function(msg) {
+  this.$message.info(msg)
 }
 
 // 全局组件挂载
 Vue.component('Pagination', Pagination)
-
 Vue.use(permission)
 
 /**
@@ -86,39 +89,38 @@ Vue.component('image-uploader', EleFormImageUploader)
 // 注册 upload-file 组件
 Vue.component('upload-file', EleFormUploadFile)
 
-Vue.use(EleForm)
-// // 注册 ele-form
-// Vue.use(EleForm, {
-//   //图片上传设置
-//   upload: {
-//     action: 'http://172.16.90.8:8080/common/upload', // 请求地址,
-//     responseFn(response, file) {
-//       if (response.code === 500) {
-//         this.$message({ showClose: true, message: response.msg, type: 'error' })
-//         return false;
-//       }else{
-//         return response.url
-//       }
-//     }
-//   },
-//   //文件上传设置
-//   'upload-file': {
-//     // 上传地址
-//     action: 'http://172.16.90.8:8080/common/uploadac',
-//     responseFn(response, file) {
-//       if (response.code === 500) {
-//         this.$message({ showClose: true, message: response.msg, type: 'error' })
-//         return false;
-//       }else{
-//         return {
-//           name: file.name,
-//           url: response.url,
-//           size: file.size
-//         }
-//       }
-//     }
-//   }
-// })
+// 注册 ele-form
+Vue.use(EleForm, {
+  //图片上传设置
+  upload: {
+    action: 'http://172.16.90.11:8080/common/upload', // 请求地址,
+    responseFn(response, file) {
+      if (response.code === 500) {
+        this.$message({ showClose: true, message: response.msg, type: 'error' })
+        return false;
+      }else{
+        return response.url
+      }
+    }
+  },
+  //文件上传设置
+  'upload-file': {
+    // 上传地址
+    action: 'http://172.16.90.11:8080/common/upload',
+    responseFn(response, file) {
+      if (response.code === 500) {
+        this.$message({ showClose: true, message: response.msg, type: 'error' })
+        return false;
+      }else{
+        return {
+          name: file.name,
+          url: response.url,
+          size: file.size
+        }
+      }
+    }
+  }
+})
 
 Vue.config.productionTip = false
 

+ 3 - 29
src/router/index.js

@@ -32,7 +32,7 @@ export const constantRoutes = [
     hidden: true,
     children: [
       {
-        path: '/redirect/:path(.*)',
+        path: '/redirect/:path*',
         component: () => import('@/views/redirect')
       }
     ]
@@ -74,7 +74,7 @@ export const constantRoutes = [
       {
         path: 'profile',
         component: () => import('@/views/system/user/profile/index'),
-        name: 'Profile',
+        name: '个人中心',
         meta: { title: '个人中心', icon: 'user' }
       }
     ]
@@ -87,36 +87,10 @@ export const constantRoutes = [
       {
         path: 'type/data/:dictId(\\d+)',
         component: () => import('@/views/system/dict/data'),
-        name: 'Data',
+        name: '字典数据',
         meta: { title: '字典数据', icon: '' }
       }
     ]
-  },
-  {
-    path: '/job',
-    component: Layout,
-    hidden: true,
-    children: [
-      {
-        path: 'log',
-        component: () => import('@/views/monitor/job/log'),
-        name: 'JobLog',
-        meta: { title: '调度日志' }
-      }
-    ]
-  },
-  {
-    path: '/gen',
-    component: Layout,
-    hidden: true,
-    children: [
-      {
-        path: 'edit',
-        component: () => import('@/views/tool/gen/editTable'),
-        name: 'GenEdit',
-        meta: { title: '修改生成配置' }
-      }
-    ]
   }
 ]
 

+ 1 - 1
src/settings.js

@@ -1,5 +1,5 @@
 module.exports = {
-  title: '综合运维服务系统',
+  title: '若依管理系统',
 
   /**
    * 是否系统布局配置

+ 0 - 1
src/store/modules/permission.js

@@ -20,7 +20,6 @@ const permission = {
         // 向后端请求路由数据
         getRouters().then(res => {
           const accessedRoutes = filterAsyncRouter(res.data)
-          accessedRoutes.push({ path: '*', redirect: '/404', hidden: true })
           commit('SET_ROUTES', accessedRoutes)
           resolve(accessedRoutes)
         })

+ 13 - 6
src/store/modules/tagsView.js

@@ -28,8 +28,13 @@ const mutations = {
     }
   },
   DEL_CACHED_VIEW: (state, view) => {
-    const index = state.cachedViews.indexOf(view.name)
-    index > -1 && state.cachedViews.splice(index, 1)
+    for (const i of state.cachedViews) {
+      if (i === view.name) {
+        const index = state.cachedViews.indexOf(i)
+        state.cachedViews.splice(index, 1)
+        break
+      }
+    }
   },
 
   DEL_OTHERS_VISITED_VIEWS: (state, view) => {
@@ -38,10 +43,12 @@ const mutations = {
     })
   },
   DEL_OTHERS_CACHED_VIEWS: (state, view) => {
-    if (index > -1) {
-      state.cachedViews = state.cachedViews.slice(index, index + 1)
-    } else {
-      state.cachedViews = []
+    for (const i of state.cachedViews) {
+      if (i === view.name) {
+        const index = state.cachedViews.indexOf(i)
+        state.cachedViews = state.cachedViews.slice(index, index + 1)
+        break
+      }
     }
   },
 

+ 0 - 423
src/utils/generator/config.js

@@ -1,423 +0,0 @@
-export const formConf = {
-  formRef: 'elForm',
-  formModel: 'formData',
-  size: 'medium',
-  labelPosition: 'right',
-  labelWidth: 100,
-  formRules: 'rules',
-  gutter: 15,
-  disabled: false,
-  span: 24,
-  formBtns: true
-}
-
-export const inputComponents = [
-  {
-    label: '单行文本',
-    tag: 'el-input',
-    tagIcon: 'input',
-    placeholder: '请输入',
-    defaultValue: undefined,
-    span: 24,
-    labelWidth: null,
-    style: { width: '100%' },
-    clearable: true,
-    prepend: '',
-    append: '',
-    'prefix-icon': '',
-    'suffix-icon': '',
-    maxlength: null,
-    'show-word-limit': false,
-    readonly: false,
-    disabled: false,
-    required: true,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/input'
-  },
-  {
-    label: '多行文本',
-    tag: 'el-input',
-    tagIcon: 'textarea',
-    type: 'textarea',
-    placeholder: '请输入',
-    defaultValue: undefined,
-    span: 24,
-    labelWidth: null,
-    autosize: {
-      minRows: 4,
-      maxRows: 4
-    },
-    style: { width: '100%' },
-    maxlength: null,
-    'show-word-limit': false,
-    readonly: false,
-    disabled: false,
-    required: true,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/input'
-  },
-  {
-    label: '密码',
-    tag: 'el-input',
-    tagIcon: 'password',
-    placeholder: '请输入',
-    defaultValue: undefined,
-    span: 24,
-    'show-password': true,
-    labelWidth: null,
-    style: { width: '100%' },
-    clearable: true,
-    prepend: '',
-    append: '',
-    'prefix-icon': '',
-    'suffix-icon': '',
-    maxlength: null,
-    'show-word-limit': false,
-    readonly: false,
-    disabled: false,
-    required: true,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/input'
-  },
-  {
-    label: '计数器',
-    tag: 'el-input-number',
-    tagIcon: 'number',
-    placeholder: '',
-    defaultValue: undefined,
-    span: 24,
-    labelWidth: null,
-    min: undefined,
-    max: undefined,
-    step: undefined,
-    'step-strictly': false,
-    precision: undefined,
-    'controls-position': '',
-    disabled: false,
-    required: true,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/input-number'
-  }
-]
-
-export const selectComponents = [
-  {
-    label: '下拉选择',
-    tag: 'el-select',
-    tagIcon: 'select',
-    placeholder: '请选择',
-    defaultValue: undefined,
-    span: 24,
-    labelWidth: null,
-    style: { width: '100%' },
-    clearable: true,
-    disabled: false,
-    required: true,
-    filterable: false,
-    multiple: false,
-    options: [{
-      label: '选项一',
-      value: 1
-    }, {
-      label: '选项二',
-      value: 2
-    }],
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/select'
-  },
-  {
-    label: '级联选择',
-    tag: 'el-cascader',
-    tagIcon: 'cascader',
-    placeholder: '请选择',
-    defaultValue: [],
-    span: 24,
-    labelWidth: null,
-    style: { width: '100%' },
-    props: {
-      props: {
-        multiple: false
-      }
-    },
-    'show-all-levels': true,
-    disabled: false,
-    clearable: true,
-    filterable: false,
-    required: true,
-    options: [{
-      id: 1,
-      value: 1,
-      label: '选项1',
-      children: [{
-        id: 2,
-        value: 2,
-        label: '选项1-1'
-      }]
-    }],
-    dataType: 'dynamic',
-    labelKey: 'label',
-    valueKey: 'value',
-    childrenKey: 'children',
-    separator: '/',
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/cascader'
-  },
-  {
-    label: '单选框组',
-    tag: 'el-radio-group',
-    tagIcon: 'radio',
-    defaultValue: undefined,
-    span: 24,
-    labelWidth: null,
-    style: {},
-    optionType: 'default',
-    border: false,
-    size: 'medium',
-    disabled: false,
-    required: true,
-    options: [{
-      label: '选项一',
-      value: 1
-    }, {
-      label: '选项二',
-      value: 2
-    }],
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/radio'
-  },
-  {
-    label: '多选框组',
-    tag: 'el-checkbox-group',
-    tagIcon: 'checkbox',
-    defaultValue: [],
-    span: 24,
-    labelWidth: null,
-    style: {},
-    optionType: 'default',
-    border: false,
-    size: 'medium',
-    disabled: false,
-    required: true,
-    options: [{
-      label: '选项一',
-      value: 1
-    }, {
-      label: '选项二',
-      value: 2
-    }],
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/checkbox'
-  },
-  {
-    label: '开关',
-    tag: 'el-',
-    tagIcon: '',
-    defaultValue: false,
-    span: 24,
-    labelWidth: null,
-    style: {},
-    disabled: false,
-    required: true,
-    'active-text': '',
-    'inactive-text': '',
-    'active-color': null,
-    'inactive-color': null,
-    'active-value': true,
-    'inactive-value': false,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/'
-  },
-  {
-    label: '滑块',
-    tag: 'el-slider',
-    tagIcon: 'slider',
-    defaultValue: null,
-    span: 24,
-    labelWidth: null,
-    disabled: false,
-    required: true,
-    min: 0,
-    max: 100,
-    step: 1,
-    'show-stops': false,
-    range: false,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/slider'
-  },
-  {
-    label: '时间选择',
-    tag: 'el-time-picker',
-    tagIcon: 'time',
-    placeholder: '请选择',
-    defaultValue: null,
-    span: 24,
-    labelWidth: null,
-    style: { width: '100%' },
-    disabled: false,
-    clearable: true,
-    required: true,
-    'picker-options': {
-      selectableRange: '00:00:00-23:59:59'
-    },
-    format: 'HH:mm:ss',
-    'value-format': 'HH:mm:ss',
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/time-picker'
-  },
-  {
-    label: '时间范围',
-    tag: 'el-time-picker',
-    tagIcon: 'time-range',
-    defaultValue: null,
-    span: 24,
-    labelWidth: null,
-    style: { width: '100%' },
-    disabled: false,
-    clearable: true,
-    required: true,
-    'is-range': true,
-    'range-separator': '至',
-    'start-placeholder': '开始时间',
-    'end-placeholder': '结束时间',
-    format: 'HH:mm:ss',
-    'value-format': 'HH:mm:ss',
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/time-picker'
-  },
-  {
-    label: '日期选择',
-    tag: 'el-date-picker',
-    tagIcon: 'date',
-    placeholder: '请选择',
-    defaultValue: null,
-    type: 'date',
-    span: 24,
-    labelWidth: null,
-    style: { width: '100%' },
-    disabled: false,
-    clearable: true,
-    required: true,
-    format: 'yyyy-MM-dd',
-    'value-format': 'yyyy-MM-dd',
-    readonly: false,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/date-picker'
-  },
-  {
-    label: '日期范围',
-    tag: 'el-date-picker',
-    tagIcon: 'date-range',
-    defaultValue: null,
-    span: 24,
-    labelWidth: null,
-    style: { width: '100%' },
-    type: 'daterange',
-    'range-separator': '至',
-    'start-placeholder': '开始日期',
-    'end-placeholder': '结束日期',
-    disabled: false,
-    clearable: true,
-    required: true,
-    format: 'yyyy-MM-dd',
-    'value-format': 'yyyy-MM-dd',
-    readonly: false,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/date-picker'
-  },
-  {
-    label: '评分',
-    tag: 'el-rate',
-    tagIcon: 'rate',
-    defaultValue: 0,
-    span: 24,
-    labelWidth: null,
-    style: {},
-    max: 5,
-    'allow-half': false,
-    'show-text': false,
-    'show-score': false,
-    disabled: false,
-    required: true,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/rate'
-  },
-  {
-    label: '颜色选择',
-    tag: 'el-color-picker',
-    tagIcon: 'color',
-    defaultValue: null,
-    labelWidth: null,
-    'show-alpha': false,
-    'color-format': '',
-    disabled: false,
-    required: true,
-    size: 'medium',
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/color-picker'
-  },
-  {
-    label: '上传',
-    tag: 'el-upload',
-    tagIcon: 'upload',
-    action: 'https://jsonplaceholder.typicode.com/posts/',
-    defaultValue: null,
-    labelWidth: null,
-    disabled: false,
-    required: true,
-    accept: '',
-    name: 'file',
-    'auto-upload': true,
-    showTip: false,
-    buttonText: '点击上传',
-    fileSize: 2,
-    sizeUnit: 'MB',
-    'list-type': 'text',
-    multiple: false,
-    regList: [],
-    changeTag: true,
-    document: 'https://element.eleme.cn/#/zh-CN/component/upload'
-  }
-]
-
-export const layoutComponents = [
-  {
-    layout: 'rowFormItem',
-    tagIcon: 'row',
-    type: 'default',
-    justify: 'start',
-    align: 'top',
-    label: '行容器',
-    layoutTree: true,
-    children: [],
-    document: 'https://element.eleme.cn/#/zh-CN/component/layout'
-  }
-]
-
-// 组件rule的触发方式,无触发方式的组件不生成rule
-export const trigger = {
-  'el-input': 'blur',
-  'el-input-number': 'blur',
-  'el-select': 'change',
-  'el-radio-group': 'change',
-  'el-checkbox-group': 'change',
-  'el-cascader': 'change',
-  'el-time-picker': 'change',
-  'el-date-picker': 'change',
-  'el-rate': 'change'
-}

+ 0 - 18
src/utils/generator/css.js

@@ -1,18 +0,0 @@
-const styles = {
-  'el-rate': '.el-rate{display: inline-block; vertical-align: text-top;}',
-  'el-upload': '.el-upload__tip{line-height: 1.2;}'
-}
-
-function addCss(cssList, el) {
-  const css = styles[el.tag]
-  css && cssList.indexOf(css) === -1 && cssList.push(css)
-  if (el.children) {
-    el.children.forEach(el2 => addCss(cssList, el2))
-  }
-}
-
-export function makeUpCss(conf) {
-  const cssList = []
-  conf.fields.forEach(el => addCss(cssList, el))
-  return cssList.join('\n')
-}

+ 0 - 29
src/utils/generator/drawingDefalut.js

@@ -1,29 +0,0 @@
-export default [
-  {
-    layout: 'colFormItem',
-    tagIcon: 'input',
-    label: '手机号',
-    vModel: 'mobile',
-    formId: 6,
-    tag: 'el-input',
-    placeholder: '请输入手机号',
-    defaultValue: '',
-    span: 24,
-    style: { width: '100%' },
-    clearable: true,
-    prepend: '',
-    append: '',
-    'prefix-icon': 'el-icon-mobile',
-    'suffix-icon': '',
-    maxlength: 11,
-    'show-word-limit': true,
-    readonly: false,
-    disabled: false,
-    required: true,
-    changeTag: true,
-    regList: [{
-      pattern: '/^1(3|4|5|7|8|9)\\d{9}$/',
-      message: '手机号格式错误'
-    }]
-  }
-]

+ 0 - 338
src/utils/generator/html.js

@@ -1,338 +0,0 @@
-/* eslint-disable max-len */
-import { trigger } from './config'
-
-let confGlobal
-let someSpanIsNot24
-
-export function dialogWrapper(str) {
-  return `<el-dialog v-bind="$attrs" v-on="$listeners" @open="onOpen" @close="onClose" title="Dialog Titile">
-    ${str}
-    <div slot="footer">
-      <el-button @click="close">取消</el-button>
-      <el-button type="primary" @click="handelConfirm">确定</el-button>
-    </div>
-  </el-dialog>`
-}
-
-export function vueTemplate(str) {
-  return `<template>
-    <div>
-      ${str}
-    </div>
-  </template>`
-}
-
-export function vueScript(str) {
-  return `<script>
-    ${str}
-  </script>`
-}
-
-export function cssStyle(cssStr) {
-  return `<style>
-    ${cssStr}
-  </style>`
-}
-
-function buildFormTemplate(conf, child, type) {
-  let labelPosition = ''
-  if (conf.labelPosition !== 'right') {
-    labelPosition = `label-position="${conf.labelPosition}"`
-  }
-  const disabled = conf.disabled ? `:disabled="${conf.disabled}"` : ''
-  let str = `<el-form ref="${conf.formRef}" :model="${conf.formModel}" :rules="${conf.formRules}" size="${conf.size}" ${disabled} label-width="${conf.labelWidth}px" ${labelPosition}>
-      ${child}
-      ${buildFromBtns(conf, type)}
-    </el-form>`
-  if (someSpanIsNot24) {
-    str = `<el-row :gutter="${conf.gutter}">
-        ${str}
-      </el-row>`
-  }
-  return str
-}
-
-function buildFromBtns(conf, type) {
-  let str = ''
-  if (conf.formBtns && type === 'file') {
-    str = `<el-form-item size="large">
-          <el-button type="primary" @click="submitForm">提交</el-button>
-          <el-button @click="resetForm">重置</el-button>
-        </el-form-item>`
-    if (someSpanIsNot24) {
-      str = `<el-col :span="24">
-          ${str}
-        </el-col>`
-    }
-  }
-  return str
-}
-
-// span不为24的用el-col包裹
-function colWrapper(element, str) {
-  if (someSpanIsNot24 || element.span !== 24) {
-    return `<el-col :span="${element.span}">
-      ${str}
-    </el-col>`
-  }
-  return str
-}
-
-const layouts = {
-  colFormItem(element) {
-    let labelWidth = ''
-    if (element.labelWidth && element.labelWidth !== confGlobal.labelWidth) {
-      labelWidth = `label-width="${element.labelWidth}px"`
-    }
-    const required = !trigger[element.tag] && element.required ? 'required' : ''
-    const tagDom = tags[element.tag] ? tags[element.tag](element) : null
-    let str = `<el-form-item ${labelWidth} label="${element.label}" prop="${element.vModel}" ${required}>
-        ${tagDom}
-      </el-form-item>`
-    str = colWrapper(element, str)
-    return str
-  },
-  rowFormItem(element) {
-    const type = element.type === 'default' ? '' : `type="${element.type}"`
-    const justify = element.type === 'default' ? '' : `justify="${element.justify}"`
-    const align = element.type === 'default' ? '' : `align="${element.align}"`
-    const gutter = element.gutter ? `gutter="${element.gutter}"` : ''
-    const children = element.children.map(el => layouts[el.layout](el))
-    let str = `<el-row ${type} ${justify} ${align} ${gutter}>
-      ${children.join('\n')}
-    </el-row>`
-    str = colWrapper(element, str)
-    return str
-  }
-}
-
-const tags = {
-  'el-input': el => {
-    const {
-      disabled, vModel, clearable, placeholder, width
-    } = attrBuilder(el)
-    const maxlength = el.maxlength ? `:maxlength="${el.maxlength}"` : ''
-    const showWordLimit = el['show-word-limit'] ? 'show-word-limit' : ''
-    const readonly = el.readonly ? 'readonly' : ''
-    const prefixIcon = el['prefix-icon'] ? `prefix-icon='${el['prefix-icon']}'` : ''
-    const suffixIcon = el['suffix-icon'] ? `suffix-icon='${el['suffix-icon']}'` : ''
-    const showPassword = el['show-password'] ? 'show-password' : ''
-    const type = el.type ? `type="${el.type}"` : ''
-    const autosize = el.autosize && el.autosize.minRows
-      ? `:autosize="{minRows: ${el.autosize.minRows}, maxRows: ${el.autosize.maxRows}}"`
-      : ''
-    let child = buildElInputChild(el)
-
-    if (child) child = `\n${child}\n` // 换行
-    return `<${el.tag} ${vModel} ${type} ${placeholder} ${maxlength} ${showWordLimit} ${readonly} ${disabled} ${clearable} ${prefixIcon} ${suffixIcon} ${showPassword} ${autosize} ${width}>${child}</${el.tag}>`
-  },
-  'el-input-number': el => {
-    const { disabled, vModel, placeholder } = attrBuilder(el)
-    const controlsPosition = el['controls-position'] ? `controls-position=${el['controls-position']}` : ''
-    const min = el.min ? `:min='${el.min}'` : ''
-    const max = el.max ? `:max='${el.max}'` : ''
-    const step = el.step ? `:step='${el.step}'` : ''
-    const stepStrictly = el['step-strictly'] ? 'step-strictly' : ''
-    const precision = el.precision ? `:precision='${el.precision}'` : ''
-
-    return `<${el.tag} ${vModel} ${placeholder} ${step} ${stepStrictly} ${precision} ${controlsPosition} ${min} ${max} ${disabled}></${el.tag}>`
-  },
-  'el-select': el => {
-    const {
-      disabled, vModel, clearable, placeholder, width
-    } = attrBuilder(el)
-    const filterable = el.filterable ? 'filterable' : ''
-    const multiple = el.multiple ? 'multiple' : ''
-    let child = buildElSelectChild(el)
-
-    if (child) child = `\n${child}\n` // 换行
-    return `<${el.tag} ${vModel} ${placeholder} ${disabled} ${multiple} ${filterable} ${clearable} ${width}>${child}</${el.tag}>`
-  },
-  'el-radio-group': el => {
-    const { disabled, vModel } = attrBuilder(el)
-    const size = `size="${el.size}"`
-    let child = buildElRadioGroupChild(el)
-
-    if (child) child = `\n${child}\n` // 换行
-    return `<${el.tag} ${vModel} ${size} ${disabled}>${child}</${el.tag}>`
-  },
-  'el-checkbox-group': el => {
-    const { disabled, vModel } = attrBuilder(el)
-    const size = `size="${el.size}"`
-    const min = el.min ? `:min="${el.min}"` : ''
-    const max = el.max ? `:max="${el.max}"` : ''
-    let child = buildElCheckboxGroupChild(el)
-
-    if (child) child = `\n${child}\n` // 换行
-    return `<${el.tag} ${vModel} ${min} ${max} ${size} ${disabled}>${child}</${el.tag}>`
-  },
-  'el-': el => {
-    const { disabled, vModel } = attrBuilder(el)
-    const activeText = el['active-text'] ? `active-text="${el['active-text']}"` : ''
-    const inactiveText = el['inactive-text'] ? `inactive-text="${el['inactive-text']}"` : ''
-    const activeColor = el['active-color'] ? `active-color="${el['active-color']}"` : ''
-    const inactiveColor = el['inactive-color'] ? `inactive-color="${el['inactive-color']}"` : ''
-    const activeValue = el['active-value'] !== true ? `:active-value='${JSON.stringify(el['active-value'])}'` : ''
-    const inactiveValue = el['inactive-value'] !== false ? `:inactive-value='${JSON.stringify(el['inactive-value'])}'` : ''
-
-    return `<${el.tag} ${vModel} ${activeText} ${inactiveText} ${activeColor} ${inactiveColor} ${activeValue} ${inactiveValue} ${disabled}></${el.tag}>`
-  },
-  'el-cascader': el => {
-    const {
-      disabled, vModel, clearable, placeholder, width
-    } = attrBuilder(el)
-    const options = el.options ? `:options="${el.vModel}Options"` : ''
-    const props = el.props ? `:props="${el.vModel}Props"` : ''
-    const showAllLevels = el['show-all-levels'] ? '' : ':show-all-levels="false"'
-    const filterable = el.filterable ? 'filterable' : ''
-    const separator = el.separator === '/' ? '' : `separator="${el.separator}"`
-
-    return `<${el.tag} ${vModel} ${options} ${props} ${width} ${showAllLevels} ${placeholder} ${separator} ${filterable} ${clearable} ${disabled}></${el.tag}>`
-  },
-  'el-slider': el => {
-    const { disabled, vModel } = attrBuilder(el)
-    const min = el.min ? `:min='${el.min}'` : ''
-    const max = el.max ? `:max='${el.max}'` : ''
-    const step = el.step ? `:step='${el.step}'` : ''
-    const range = el.range ? 'range' : ''
-    const showStops = el['show-stops'] ? `:show-stops="${el['show-stops']}"` : ''
-
-    return `<${el.tag} ${min} ${max} ${step} ${vModel} ${range} ${showStops} ${disabled}></${el.tag}>`
-  },
-  'el-time-picker': el => {
-    const {
-      disabled, vModel, clearable, placeholder, width
-    } = attrBuilder(el)
-    const startPlaceholder = el['start-placeholder'] ? `start-placeholder="${el['start-placeholder']}"` : ''
-    const endPlaceholder = el['end-placeholder'] ? `end-placeholder="${el['end-placeholder']}"` : ''
-    const rangeSeparator = el['range-separator'] ? `range-separator="${el['range-separator']}"` : ''
-    const isRange = el['is-range'] ? 'is-range' : ''
-    const format = el.format ? `format="${el.format}"` : ''
-    const valueFormat = el['value-format'] ? `value-format="${el['value-format']}"` : ''
-    const pickerOptions = el['picker-options'] ? `:picker-options='${JSON.stringify(el['picker-options'])}'` : ''
-
-    return `<${el.tag} ${vModel} ${isRange} ${format} ${valueFormat} ${pickerOptions} ${width} ${placeholder} ${startPlaceholder} ${endPlaceholder} ${rangeSeparator} ${clearable} ${disabled}></${el.tag}>`
-  },
-  'el-date-picker': el => {
-    const {
-      disabled, vModel, clearable, placeholder, width
-    } = attrBuilder(el)
-    const startPlaceholder = el['start-placeholder'] ? `start-placeholder="${el['start-placeholder']}"` : ''
-    const endPlaceholder = el['end-placeholder'] ? `end-placeholder="${el['end-placeholder']}"` : ''
-    const rangeSeparator = el['range-separator'] ? `range-separator="${el['range-separator']}"` : ''
-    const format = el.format ? `format="${el.format}"` : ''
-    const valueFormat = el['value-format'] ? `value-format="${el['value-format']}"` : ''
-    const type = el.type === 'date' ? '' : `type="${el.type}"`
-    const readonly = el.readonly ? 'readonly' : ''
-
-    return `<${el.tag} ${type} ${vModel} ${format} ${valueFormat} ${width} ${placeholder} ${startPlaceholder} ${endPlaceholder} ${rangeSeparator} ${clearable} ${readonly} ${disabled}></${el.tag}>`
-  },
-  'el-rate': el => {
-    const { disabled, vModel } = attrBuilder(el)
-    const max = el.max ? `:max='${el.max}'` : ''
-    const allowHalf = el['allow-half'] ? 'allow-half' : ''
-    const showText = el['show-text'] ? 'show-text' : ''
-    const showScore = el['show-score'] ? 'show-score' : ''
-
-    return `<${el.tag} ${vModel} ${allowHalf} ${showText} ${showScore} ${disabled}></${el.tag}>`
-  },
-  'el-color-picker': el => {
-    const { disabled, vModel } = attrBuilder(el)
-    const size = `size="${el.size}"`
-    const showAlpha = el['show-alpha'] ? 'show-alpha' : ''
-    const colorFormat = el['color-format'] ? `color-format="${el['color-format']}"` : ''
-
-    return `<${el.tag} ${vModel} ${size} ${showAlpha} ${colorFormat} ${disabled}></${el.tag}>`
-  },
-  'el-upload': el => {
-    const disabled = el.disabled ? ':disabled=\'true\'' : ''
-    const action = el.action ? `:action="${el.vModel}Action"` : ''
-    const multiple = el.multiple ? 'multiple' : ''
-    const listType = el['list-type'] !== 'text' ? `list-type="${el['list-type']}"` : ''
-    const accept = el.accept ? `accept="${el.accept}"` : ''
-    const name = el.name !== 'file' ? `name="${el.name}"` : ''
-    const autoUpload = el['auto-upload'] === false ? ':auto-upload="false"' : ''
-    const beforeUpload = `:before-upload="${el.vModel}BeforeUpload"`
-    const fileList = `:file-list="${el.vModel}fileList"`
-    const ref = `ref="${el.vModel}"`
-    let child = buildElUploadChild(el)
-
-    if (child) child = `\n${child}\n` // 换行
-    return `<${el.tag} ${ref} ${fileList} ${action} ${autoUpload} ${multiple} ${beforeUpload} ${listType} ${accept} ${name} ${disabled}>${child}</${el.tag}>`
-  }
-}
-
-function attrBuilder(el) {
-  return {
-    vModel: `v-model="${confGlobal.formModel}.${el.vModel}"`,
-    clearable: el.clearable ? 'clearable' : '',
-    placeholder: el.placeholder ? `placeholder="${el.placeholder}"` : '',
-    width: el.style && el.style.width ? ':style="{width: \'100%\'}"' : '',
-    disabled: el.disabled ? ':disabled=\'true\'' : ''
-  }
-}
-
-// el-input innerHTML
-function buildElInputChild(conf) {
-  const children = []
-  if (conf.prepend) {
-    children.push(`<template slot="prepend">${conf.prepend}</template>`)
-  }
-  if (conf.append) {
-    children.push(`<template slot="append">${conf.append}</template>`)
-  }
-  return children.join('\n')
-}
-
-function buildElSelectChild(conf) {
-  const children = []
-  if (conf.options && conf.options.length) {
-    children.push(`<el-option v-for="(item, index) in ${conf.vModel}Options" :key="index" :label="item.label" :value="item.value" :disabled="item.disabled"></el-option>`)
-  }
-  return children.join('\n')
-}
-
-function buildElRadioGroupChild(conf) {
-  const children = []
-  if (conf.options && conf.options.length) {
-    const tag = conf.optionType === 'button' ? 'el-radio-button' : 'el-radio'
-    const border = conf.border ? 'border' : ''
-    children.push(`<${tag} v-for="(item, index) in ${conf.vModel}Options" :key="index" :label="item.value" :disabled="item.disabled" ${border}>{{item.label}}</${tag}>`)
-  }
-  return children.join('\n')
-}
-
-function buildElCheckboxGroupChild(conf) {
-  const children = []
-  if (conf.options && conf.options.length) {
-    const tag = conf.optionType === 'button' ? 'el-checkbox-button' : 'el-checkbox'
-    const border = conf.border ? 'border' : ''
-    children.push(`<${tag} v-for="(item, index) in ${conf.vModel}Options" :key="index" :label="item.value" :disabled="item.disabled" ${border}>{{item.label}}</${tag}>`)
-  }
-  return children.join('\n')
-}
-
-function buildElUploadChild(conf) {
-  const list = []
-  if (conf['list-type'] === 'picture-card') list.push('<i class="el-icon-plus"></i>')
-  else list.push(`<el-button size="small" type="primary" icon="el-icon-upload">${conf.buttonText}</el-button>`)
-  if (conf.showTip) list.push(`<div slot="tip" class="el-upload__tip">只能上传不超过 ${conf.fileSize}${conf.sizeUnit} 的${conf.accept}文件</div>`)
-  return list.join('\n')
-}
-
-export function makeUpHtml(conf, type) {
-  const htmlList = []
-  confGlobal = conf
-  someSpanIsNot24 = conf.fields.some(item => item.span !== 24)
-  conf.fields.forEach(el => {
-    htmlList.push(layouts[el.layout](el))
-  })
-  const htmlStr = htmlList.join('\n')
-
-  let temp = buildFormTemplate(conf, htmlStr, type)
-  if (type === 'dialog') {
-    temp = dialogWrapper(temp)
-  }
-  confGlobal = null
-  return temp
-}

文件差異過大導致無法顯示
+ 0 - 0
src/utils/generator/icon.json


+ 0 - 236
src/utils/generator/js.js

@@ -1,236 +0,0 @@
-import { isArray } from 'util'
-import { exportDefault, titleCase } from '@/utils/index'
-import { trigger } from './config'
-
-const units = {
-  KB: '1024',
-  MB: '1024 / 1024',
-  GB: '1024 / 1024 / 1024'
-}
-let confGlobal
-const inheritAttrs = {
-  file: '',
-  dialog: 'inheritAttrs: false,'
-}
-
-
-export function makeUpJs(conf, type) {
-  confGlobal = conf = JSON.parse(JSON.stringify(conf))
-  const dataList = []
-  const ruleList = []
-  const optionsList = []
-  const propsList = []
-  const methodList = mixinMethod(type)
-  const uploadVarList = []
-
-  conf.fields.forEach(el => {
-    buildAttributes(el, dataList, ruleList, optionsList, methodList, propsList, uploadVarList)
-  })
-
-  const script = buildexport(
-    conf,
-    type,
-    dataList.join('\n'),
-    ruleList.join('\n'),
-    optionsList.join('\n'),
-    uploadVarList.join('\n'),
-    propsList.join('\n'),
-    methodList.join('\n')
-  )
-  confGlobal = null
-  return script
-}
-
-function buildAttributes(el, dataList, ruleList, optionsList, methodList, propsList, uploadVarList) {
-  buildData(el, dataList)
-  buildRules(el, ruleList)
-
-  if (el.options && el.options.length) {
-    buildOptions(el, optionsList)
-    if (el.dataType === 'dynamic') {
-      const model = `${el.vModel}Options`
-      const options = titleCase(model)
-      buildOptionMethod(`get${options}`, model, methodList)
-    }
-  }
-
-  if (el.props && el.props.props) {
-    buildProps(el, propsList)
-  }
-
-  if (el.action && el.tag === 'el-upload') {
-    uploadVarList.push(
-      `${el.vModel}Action: '${el.action}',
-      ${el.vModel}fileList: [],`
-    )
-    methodList.push(buildBeforeUpload(el))
-    if (!el['auto-upload']) {
-      methodList.push(buildSubmitUpload(el))
-    }
-  }
-
-  if (el.children) {
-    el.children.forEach(el2 => {
-      buildAttributes(el2, dataList, ruleList, optionsList, methodList, propsList, uploadVarList)
-    })
-  }
-}
-
-function mixinMethod(type) {
-  const list = []; const
-    minxins = {
-      file: confGlobal.formBtns ? {
-        submitForm: `submitForm() {
-        this.$refs['${confGlobal.formRef}'].validate(valid => {
-          if(!valid) return
-          // TODO 提交表单
-        })
-      },`,
-        resetForm: `resetForm() {
-        this.$refs['${confGlobal.formRef}'].resetFields()
-      },`
-      } : null,
-      dialog: {
-        onOpen: 'onOpen() {},',
-        onClose: `onClose() {
-        this.$refs['${confGlobal.formRef}'].resetFields()
-      },`,
-        close: `close() {
-        this.$emit('update:visible', false)
-      },`,
-        handelConfirm: `handelConfirm() {
-        this.$refs['${confGlobal.formRef}'].validate(valid => {
-          if(!valid) return
-          this.close()
-        })
-      },`
-      }
-    }
-
-  const methods = minxins[type]
-  if (methods) {
-    Object.keys(methods).forEach(key => {
-      list.push(methods[key])
-    })
-  }
-
-  return list
-}
-
-function buildData(conf, dataList) {
-  if (conf.vModel === undefined) return
-  let defaultValue
-  if (typeof (conf.defaultValue) === 'string' && !conf.multiple) {
-    defaultValue = `'${conf.defaultValue}'`
-  } else {
-    defaultValue = `${JSON.stringify(conf.defaultValue)}`
-  }
-  dataList.push(`${conf.vModel}: ${defaultValue},`)
-}
-
-function buildRules(conf, ruleList) {
-  if (conf.vModel === undefined) return
-  const rules = []
-  if (trigger[conf.tag]) {
-    if (conf.required) {
-      const type = isArray(conf.defaultValue) ? 'type: \'array\',' : ''
-      let message = isArray(conf.defaultValue) ? `请至少选择一个${conf.vModel}` : conf.placeholder
-      if (message === undefined) message = `${conf.label}不能为空`
-      rules.push(`{ required: true, ${type} message: '${message}', trigger: '${trigger[conf.tag]}' }`)
-    }
-    if (conf.regList && isArray(conf.regList)) {
-      conf.regList.forEach(item => {
-        if (item.pattern) {
-          rules.push(`{ pattern: ${eval(item.pattern)}, message: '${item.message}', trigger: '${trigger[conf.tag]}' }`)
-        }
-      })
-    }
-    ruleList.push(`${conf.vModel}: [${rules.join(',')}],`)
-  }
-}
-
-function buildOptions(conf, optionsList) {
-  if (conf.vModel === undefined) return
-  if (conf.dataType === 'dynamic') { conf.options = [] }
-  const str = `${conf.vModel}Options: ${JSON.stringify(conf.options)},`
-  optionsList.push(str)
-}
-
-function buildProps(conf, propsList) {
-  if (conf.dataType === 'dynamic') {
-    conf.valueKey !== 'value' && (conf.props.props.value = conf.valueKey)
-    conf.labelKey !== 'label' && (conf.props.props.label = conf.labelKey)
-    conf.childrenKey !== 'children' && (conf.props.props.children = conf.childrenKey)
-  }
-  const str = `${conf.vModel}Props: ${JSON.stringify(conf.props.props)},`
-  propsList.push(str)
-}
-
-function buildBeforeUpload(conf) {
-  const unitNum = units[conf.sizeUnit]; let rightSizeCode = ''; let acceptCode = ''; const
-    returnList = []
-  if (conf.fileSize) {
-    rightSizeCode = `let isRightSize = file.size / ${unitNum} < ${conf.fileSize}
-    if(!isRightSize){
-      this.$message.error('文件大小超过 ${conf.fileSize}${conf.sizeUnit}')
-    }`
-    returnList.push('isRightSize')
-  }
-  if (conf.accept) {
-    acceptCode = `let isAccept = new RegExp('${conf.accept}').test(file.type)
-    if(!isAccept){
-      this.$message.error('应该选择${conf.accept}类型的文件')
-    }`
-    returnList.push('isAccept')
-  }
-  const str = `${conf.vModel}BeforeUpload(file) {
-    ${rightSizeCode}
-    ${acceptCode}
-    return ${returnList.join('&&')}
-  },`
-  return returnList.length ? str : ''
-}
-
-function buildSubmitUpload(conf) {
-  const str = `submitUpload() {
-    this.$refs['${conf.vModel}'].submit()
-  },`
-  return str
-}
-
-function buildOptionMethod(methodName, model, methodList) {
-  const str = `${methodName}() {
-    // TODO 发起请求获取数据
-    this.${model}
-  },`
-  methodList.push(str)
-}
-
-function buildexport(conf, type, data, rules, selectOptions, uploadVar, props, methods) {
-  const str = `${exportDefault}{
-  ${inheritAttrs[type]}
-  components: {},
-  props: [],
-  data () {
-    return {
-      ${conf.formModel}: {
-        ${data}
-      },
-      ${conf.formRules}: {
-        ${rules}
-      },
-      ${uploadVar}
-      ${selectOptions}
-      ${props}
-    }
-  },
-  computed: {},
-  watch: {},
-  created () {},
-  mounted () {},
-  methods: {
-    ${methods}
-  }
-}`
-  return str
-}

+ 0 - 121
src/utils/generator/render.js

@@ -1,121 +0,0 @@
-import { makeMap } from '@/utils/index'
-
-// 参考https://github.com/vuejs/vue/blob/v2.6.10/src/platforms/web/server/util.js
-const isAttr = makeMap(
-  'accept,accept-charset,accesskey,action,align,alt,async,autocomplete,'
-  + 'autofocus,autoplay,autosave,bgcolor,border,buffered,challenge,charset,'
-  + 'checked,cite,class,code,codebase,color,cols,colspan,content,http-equiv,'
-  + 'name,contenteditable,contextmenu,controls,coords,data,datetime,default,'
-  + 'defer,dir,dirname,disabled,download,draggable,dropzone,enctype,method,for,'
-  + 'form,formaction,headers,height,hidden,high,href,hreflang,http-equiv,'
-  + 'icon,id,ismap,itemprop,keytype,kind,label,lang,language,list,loop,low,'
-  + 'manifest,max,maxlength,media,method,GET,POST,min,multiple,email,file,'
-  + 'muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,'
-  + 'preload,radiogroup,readonly,rel,required,reversed,rows,rowspan,sandbox,'
-  + 'scope,scoped,seamless,selected,shape,size,type,text,password,sizes,span,'
-  + 'spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,'
-  + 'target,title,type,usemap,value,width,wrap'
-)
-
-function vModel(self, dataObject, defaultValue) {
-  dataObject.props.value = defaultValue
-
-  dataObject.on.input = val => {
-    self.$emit('input', val)
-  }
-}
-
-const componentChild = {
-  'el-input': {
-    prepend(h, conf, key) {
-      return <template slot="prepend">{conf[key]}</template>
-    },
-    append(h, conf, key) {
-      return <template slot="append">{conf[key]}</template>
-    }
-  },
-  'el-select': {
-    options(h, conf, key) {
-      const list = []
-      conf.options.forEach(item => {
-        list.push(<el-option label={item.label} value={item.value} disabled={item.disabled}></el-option>)
-      })
-      return list
-    }
-  },
-  'el-radio-group': {
-    options(h, conf, key) {
-      const list = []
-      conf.options.forEach(item => {
-        if (conf.optionType === 'button') list.push(<el-radio-button label={item.value}>{item.label}</el-radio-button>)
-        else list.push(<el-radio label={item.value} border={conf.border}>{item.label}</el-radio>)
-      })
-      return list
-    }
-  },
-  'el-checkbox-group': {
-    options(h, conf, key) {
-      const list = []
-      conf.options.forEach(item => {
-        if (conf.optionType === 'button') {
-          list.push(<el-checkbox-button label={item.value}>{item.label}</el-checkbox-button>)
-        } else {
-          list.push(<el-checkbox label={item.value} border={conf.border}>{item.label}</el-checkbox>)
-        }
-      })
-      return list
-    }
-  },
-  'el-upload': {
-    'list-type': (h, conf, key) => {
-      const list = []
-      if (conf['list-type'] === 'picture-card') {
-        list.push(<i class="el-icon-plus"></i>)
-      } else {
-        list.push(<el-button size="small" type="primary" icon="el-icon-upload">{conf.buttonText}</el-button>)
-      }
-      if (conf.showTip) {
-        list.push(<div slot="tip" class="el-upload__tip">只能上传不超过 {conf.fileSize}{conf.sizeUnit} 的{conf.accept}文件</div>)
-      }
-      return list
-    }
-  }
-}
-
-export default {
-  render(h) {
-    const dataObject = {
-      attrs: {},
-      props: {},
-      on: {},
-      style: {}
-    }
-    const confClone = JSON.parse(JSON.stringify(this.conf))
-    const children = []
-
-    const childObjs = componentChild[confClone.tag]
-    if (childObjs) {
-      Object.keys(childObjs).forEach(key => {
-        const childFunc = childObjs[key]
-        if (confClone[key]) {
-          children.push(childFunc(h, confClone, key))
-        }
-      })
-    }
-
-    Object.keys(confClone).forEach(key => {
-      const val = confClone[key]
-      if (key === 'vModel') {
-        vModel(this, dataObject, confClone.defaultValue)
-      } else if (dataObject[key]) {
-        dataObject[key] = val
-      } else if (!isAttr(key)) {
-        dataObject.props[key] = val
-      } else {
-        dataObject.attrs[key] = val
-      }
-    })
-    return h(this.conf.tag, dataObject, children)
-  },
-  props: ['conf']
-}

+ 0 - 69
src/utils/index.js

@@ -315,72 +315,3 @@ export function removeClass(ele, cls) {
     ele.className = ele.className.replace(reg, ' ')
   }
 }
-
-export function makeMap(str, expectsLowerCase) {
-  const map = Object.create(null)
-  const list = str.split(',')
-  for (let i = 0; i < list.length; i++) {
-    map[list[i]] = true
-  }
-  return expectsLowerCase
-    ? val => map[val.toLowerCase()]
-    : val => map[val]
-}
- 
-export const exportDefault = 'export default '
-
-export const beautifierConf = {
-  html: {
-    indent_size: '2',
-    indent_char: ' ',
-    max_preserve_newlines: '-1',
-    preserve_newlines: false,
-    keep_array_indentation: false,
-    break_chained_methods: false,
-    indent_scripts: 'separate',
-    brace_style: 'end-expand',
-    space_before_conditional: true,
-    unescape_strings: false,
-    jslint_happy: false,
-    end_with_newline: true,
-    wrap_line_length: '110',
-    indent_inner_html: true,
-    comma_first: false,
-    e4x: true,
-    indent_empty_lines: true
-  },
-  js: {
-    indent_size: '2',
-    indent_char: ' ',
-    max_preserve_newlines: '-1',
-    preserve_newlines: false,
-    keep_array_indentation: false,
-    break_chained_methods: false,
-    indent_scripts: 'normal',
-    brace_style: 'end-expand',
-    space_before_conditional: true,
-    unescape_strings: false,
-    jslint_happy: true,
-    end_with_newline: true,
-    wrap_line_length: '110',
-    indent_inner_html: true,
-    comma_first: false,
-    e4x: true,
-    indent_empty_lines: true
-  }
-}
-
-// 首字母大小
-export function titleCase(str) {
-  return str.replace(/( |^)[a-z]/g, L => L.toUpperCase())
-}
-
-// 下划转驼峰
-export function camelCase(str) {
-  return str.replace(/-[a-z]/g, str1 => str1.substr(-1).toUpperCase())
-}
-
-export function isNumberStr(str) {
-  return /^[+-]?(0|([1-9]\d*))(\.\d+)?$/g.test(str)
-}
- 

+ 0 - 30
src/utils/jsencrypt.js

@@ -1,30 +0,0 @@
-import JSEncrypt from 'jsencrypt/bin/jsencrypt'
-
-// 密钥对生成 http://web.chacuo.net/netrsakeypair
-
-const publicKey = 'MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANL378k3RiZHWx5AfJqdH9xRNBmD9wGD\n' +
-  '2iRe41HdTNF8RUhNnHit5NpMNtGL0NPTSSpPjjI1kJfVorRvaQerUgkCAwEAAQ=='
-
-const privateKey = 'MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEA0vfvyTdGJkdbHkB8\n' +
-  'mp0f3FE0GYP3AYPaJF7jUd1M0XxFSE2ceK3k2kw20YvQ09NJKk+OMjWQl9WitG9p\n' +
-  'B6tSCQIDAQABAkA2SimBrWC2/wvauBuYqjCFwLvYiRYqZKThUS3MZlebXJiLB+Ue\n' +
-  '/gUifAAKIg1avttUZsHBHrop4qfJCwAI0+YRAiEA+W3NK/RaXtnRqmoUUkb59zsZ\n' +
-  'UBLpvZgQPfj1MhyHDz0CIQDYhsAhPJ3mgS64NbUZmGWuuNKp5coY2GIj/zYDMJp6\n' +
-  'vQIgUueLFXv/eZ1ekgz2Oi67MNCk5jeTF2BurZqNLR3MSmUCIFT3Q6uHMtsB9Eha\n' +
-  '4u7hS31tj1UWE+D+ADzp59MGnoftAiBeHT7gDMuqeJHPL4b+kC+gzV4FGTfhR9q3\n' +
-  'tTbklZkD2A=='
-
-// 加密
-export function encrypt(txt) {
-  const encryptor = new JSEncrypt()
-  encryptor.setPublicKey(publicKey) // 设置公钥
-  return encryptor.encrypt(txt) // 对需要加密的数据进行加密
-}
-
-// 解密
-export function decrypt(txt) {
-  const encryptor = new JSEncrypt()
-  encryptor.setPrivateKey(privateKey)
-  return encryptor.decrypt(txt)
-}
-

+ 6 - 31
src/utils/permission.js

@@ -1,49 +1,24 @@
 import store from '@/store'
 
 /**
- * 字符权限校验
- * @param {Array} value 校验值
+ * @param {Array} value
  * @returns {Boolean}
  */
-export function checkPermi(value) {
-  if (value && value instanceof Array && value.length > 0) {
-    const permissions = store.getters && store.getters.permissions
-    const permissionDatas = value
-
-    const hasPermission = permissions.some(permission => {
-      return permissionDatas.includes(permission)
-    })
-
-    if (!hasPermission) {
-      return false
-    }
-    return true
-  } else {
-    console.error(`need roles! Like checkPermi="['system:user:add','system:user:edit']"`)
-    return false
-  }
-}
-
-/**
- * 角色权限校验
- * @param {Array} value 校验值
- * @returns {Boolean}
- */
-export function checkRole(value) {
+export default function checkPermission(value) {
   if (value && value instanceof Array && value.length > 0) {
     const roles = store.getters && store.getters.roles
     const permissionRoles = value
 
-    const hasRole = roles.some(role => {
+    const hasPermission = roles.some(role => {
       return permissionRoles.includes(role)
     })
 
-    if (!hasRole) {
+    if (!hasPermission) {
       return false
     }
     return true
   } else {
-    console.error(`need roles! Like checkRole="['admin','editor']"`)
+    console.error(`need roles! Like v-permission="['admin','editor']"`)
     return false
   }
-}
+}

+ 1 - 1
src/utils/request.js

@@ -1,5 +1,5 @@
 import axios from 'axios'
-import { Notification, MessageBox, Message } from 'element-ui'
+import { Notification, MessageBox } from 'element-ui'
 import store from '@/store'
 import { getToken } from '@/utils/auth'
 

+ 65 - 156
src/utils/ruoyi.js

@@ -2,178 +2,87 @@
  * 通用js方法封装处理
  * Copyright (c) 2019 ruoyi
  */
-import { console } from 'vuedraggable/src/util/helper'
-
-const baseURL = process.env.VUE_APP_BASE_API
-
-export function formDateTime(time) {
-  if(null!==time){
-    const d = new Date(time)
-    const retime =  d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds()
-    return retime
-  }else{
-    return ''
-  }
-}
-
-export function formDate(time) {
-  if(null!==time){
-    const d = new Date(time)
-    const retime =  d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate()
-    return retime
-  }else{
-    return ''
-  }
-}
 
 // 日期格式化
 export function parseTime(time, pattern) {
-  if (arguments.length === 0 || !time) {
-    return null
-  }
-  const format = pattern || '{y}-{m}-{d} {h}:{i}:{s}'
-  let date
-  if (typeof time === 'object') {
-    date = time
-  } else {
-    if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {
-      time = parseInt(time)
-    } else if (typeof time === 'string') {
-      time = time.replace(new RegExp(/-/gm), '/')
-    }
-    if ((typeof time === 'number') && (time.toString().length === 10)) {
-      time = time * 1000
-    }
-    date = new Date(time)
-  }
-  const formatObj = {
-    y: date.getFullYear(),
-    m: date.getMonth() + 1,
-    d: date.getDate(),
-    h: date.getHours(),
-    i: date.getMinutes(),
-    s: date.getSeconds(),
-    a: date.getDay()
-  }
-  const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
-    let value = formatObj[key]
-    // Note: getDay() returns 0 on Sunday
-    if (key === 'a') {
-      return ['日', '一', '二', '三', '四', '五', '六'][value]
-    }
-    if (result.length > 0 && value < 10) {
-      value = '0' + value
-    }
-    return value || 0
-  })
-  return time_str
+	if (arguments.length === 0) {
+		return null
+	  }
+	  const format = pattern || '{y}-{m}-{d} {h}:{i}:{s}'
+	  let date
+	  if (typeof time === 'object') {
+		date = time
+	  } else {
+		if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {
+		  time = parseInt(time)
+		}
+		if ((typeof time === 'number') && (time.toString().length === 10)) {
+		  time = time * 1000
+		}
+		date = new Date(time)
+	  }
+	  const formatObj = {
+		y: date.getFullYear(),
+		m: date.getMonth() + 1,
+		d: date.getDate(),
+		h: date.getHours(),
+		i: date.getMinutes(),
+		s: date.getSeconds(),
+		a: date.getDay()
+	  }
+	  const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
+		let value = formatObj[key]
+		// Note: getDay() returns 0 on Sunday
+		if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value ] }
+		if (result.length > 0 && value < 10) {
+		  value = '0' + value
+		}
+		return value || 0
+	  })
+	  return time_str
 }
 
 // 表单重置
 export function resetForm(refName) {
-  if (this.$refs[refName]) {
-    this.$refs[refName].resetFields()
-  }
+	if (this.$refs[refName] !== undefined) {
+		this.$refs[refName].resetFields();
+	}
 }
 
 // 添加日期范围
 export function addDateRange(params, dateRange) {
-  var search = params
-  search.beginTime = ''
-  search.endTime = ''
-  if (null != dateRange && '' != dateRange) {
-    search.beginTime = this.dateRange[0]
-    search.endTime = this.dateRange[1]
-  }
-  return search
+	var search = params;
+	if (null != dateRange) {
+		search.params = {
+			beginTime: this.dateRange[0],
+			endTime: this.dateRange[1]
+		};
+	}
+	return search;
 }
 
 // 回显数据字典
 export function selectDictLabel(datas, value) {
-  var actions = []
-  Object.keys(datas).map((key) => {
-    if (datas[key].dictValue == ('' + value)) {
-      actions.push(datas[key].dictLabel)
-      return false
-    }
-  })
-  return actions.join('')
-}
-
-// 回显数据字典
-export function selectFormat(datas, value) {
-  var actions = []
-  Object.keys(datas).map((key) => {
-    if (datas[key].value == ('' + value)) {
-      actions.push(datas[key].label)
-      return false
-    }
-  })
-  return actions.join('')
-}
-// 检测是否存在该集合中
-export function containData(datas,key, value) {
-  for (const data of datas) {
-    let datum = data[key]
-    console.log(datum+"|"+value)
-    if( datum== ('' + value)){
-      return true;
-    }
-  }
-  return false;
-}
-
-// 通用下载方法
-export function download(fileName) {
-  window.location.href = baseURL + '/common/download?fileName=' + encodeURI(fileName) + '&delete=' + true
+	var actions = [];
+	Object.keys(datas).map((key) => {
+		if (datas[key].dictValue == ('' + value)) {
+			actions.push(datas[key].dictLabel);
+			return false;
+		}
+	})
+	return actions.join('');
 }
 
 // 字符串格式化(%s )
 export function sprintf(str) {
-  var args = arguments, flag = true, i = 1
-  str = str.replace(/%s/g, function() {
-    var arg = args[i++]
-    if (typeof arg === 'undefined') {
-      flag = false
-      return ''
-    }
-    return arg
-  })
-  return flag ? str : ''
-}
-
-// 转换字符串,undefined,null等转化为""
-export function praseStrEmpty(str) {
-  if (!str || str == 'undefined' || str == 'null') {
-    return ''
-  }
-  return str
-}
-
-/**
- * 构造树型结构数据
- * @param {*} data 数据源
- * @param {*} id id字段 默认 'id'
- * @param {*} parentId 父节点字段 默认 'parentId'
- * @param {*} children 孩子节点字段 默认 'children'
- * @param {*} rootId 根Id 默认 0
- */
-export function handleTree(data, id, parentId, children, rootId) {
-  id = id || 'id'
-  parentId = parentId || 'parentId'
-  children = children || 'children'
-  rootId = rootId || 0
-  //对源数据深度克隆
-  const cloneData = JSON.parse(JSON.stringify(data))
-  //循环所有项
-  const treeData = cloneData.filter(father => {
-    let branchArr = cloneData.filter(child => {
-      //返回每一项的子级数组
-      return father[id] === child[parentId]
-    })
-    branchArr.length > 0 ? father.children = branchArr : ''
-    //返回第一层
-    return father[parentId] === rootId
-  })
-  return treeData != '' ? treeData : data
-}
+	var args = arguments, flag = true, i = 1;
+	str = str.replace(/%s/g, function () {
+		var arg = args[i++];
+		if (typeof arg === 'undefined') {
+			flag = false;
+			return '';
+		}
+		return arg;
+	});
+	return flag ? str : '';
+}

+ 0 - 40
src/utils/zipdownload.js

@@ -1,40 +0,0 @@
-import axios from 'axios'
-import { getToken } from '@/utils/auth'
-
-const mimeMap = {
-  xlsx: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
-  zip: 'application/zip'
-}
-
-const baseUrl = process.env.VUE_APP_BASE_API
-export function downLoadZip(str, filename) {
-  var url = baseUrl + str
-  axios({
-    method: 'get',
-    url: url,
-    responseType: 'blob',
-    headers: { 'Authorization': 'Bearer ' + getToken() }
-  }).then(res => {
-    resolveBlob(res, mimeMap.zip)
-  })
-}
-/**
- * 解析blob响应内容并下载
- * @param {*} res blob响应内容
- * @param {String} mimeType MIME类型
- */
-export function resolveBlob(res, mimeType) {
-  const aLink = document.createElement('a')
-  var blob = new Blob([res.data], { type: mimeType })
-  // //从response的headers中获取filename, 后端response.setHeader("Content-disposition", "attachment; filename=xxxx.docx") 设置的文件名;
-  var patt = new RegExp('filename=([^;]+\\.[^\\.;]+);*')
-  var contentDisposition = decodeURI(res.headers['content-disposition'])
-  var result = patt.exec(contentDisposition)
-  var fileName = result[1]
-  fileName = fileName.replace(/\"/g, '')
-  aLink.href = URL.createObjectURL(blob)
-  aLink.setAttribute('download', fileName) // 设置下载文件名称
-  document.body.appendChild(aLink)
-  aLink.click()
-  document.body.appendChild(aLink)
-}

+ 10 - 30
src/views/activiti/definition/index.vue

@@ -19,6 +19,9 @@
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button type="info" icon="el-icon-refresh-right" size="mini" @click="reList">清空</el-button>
 
+        <el-button type="danger" icon="el-icon-delete" size="mini" @click="deleteTi">
+          删除
+        </el-button>
 
       </el-form-item>
     </el-form>
@@ -32,8 +35,6 @@
           <span>{{ (queryParams.pageNum-1) * queryParams.pageSize + (scope.$index + 1) }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="部署id" prop="deploymentId"/>
-      <el-table-column label="id" prop="id"/>
       <el-table-column label="名称" prop="name"/>
       <el-table-column label="key" prop="key" :show-overflow-tooltip="true"/>
       <el-table-column label="版本" prop="version"/>
@@ -44,9 +45,6 @@
             size="mini" type="warning"
             @click="showImage(scope.$index, scope.row)">查看模型图
           </el-button>
-          <el-button type="danger" icon="el-icon-delete" size="mini" @click="deleteObj(scope.row.deploymentId)">
-            删除
-          </el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -57,7 +55,7 @@
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
     />
-    <el-dialog :close-on-click-modal="false" :title="activitiImg.title" :visible.sync="activitiImg.open" width="1000px">
+    <el-dialog :title="activitiImg.title" :visible.sync="activitiImg.open" width="1000px">
       <el-image :src="activitiImg.src"></el-image>
     </el-dialog>
   </div>
@@ -69,13 +67,12 @@
   import { list, upload, delTitle } from '@/api/activiti/definition.js'
 
   export default {
-    data() {
+    data: function() {
       return {
         // 查询参数
         queryParams: {
           pageNum: 1,
-          pageSize: 10,
-          title:''
+          pageSize: 10
         },
         // 分页参数
         total: 0,
@@ -120,7 +117,7 @@
       handleSelectionChange(val) {
         this.multipleSelection = []
         for (let i = 0; i < val.length; i++) {
-          this.multipleSelection[i] = val[i].deploymentId
+          this.multipleSelection[i] = val[i].id
         }
       },
       /** 查询角色列表 */
@@ -128,30 +125,13 @@
         this.loading = true
         list(this.addDateRange(this.queryParams)).then(
           response => {
-            this.tableData = response.rows
-            this.total = response.total
+            this.tableData = response.data
+            this.total = 10
             this.loading = false
           }
         )
       }
       ,
-      deleteObj(id) {
-        this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
-          confirmButtonText: '确定 ',
-          cancelButtonText: '取消 ',
-          type: 'warning',
-          center: true
-        }).then(() => {
-          let ids = [];
-          ids[0]=id;
-          delTitle(ids)
-          this.msgSuccess('成功')
-          this.reIds()
-          this.reList()
-        }).catch(() => {
-          this.msgSuccess('已取消删除')
-        })
-      },
       deleteTi() {
         this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
           confirmButtonText: '确定 ',
@@ -194,7 +174,7 @@
         this.activitiImg.src=undefined
         let modelKey = row.key
         let version = row.version
-        this.activitiImg.src=process.env.VUE_APP_BASE_API + '/leaveNew/read-activiti?processDefinitionKey=' + modelKey +'&version='+version+ '&t='+Math.random();
+        this.activitiImg.src=process.env.VUE_APP_BASE_URL + '/leaveNew/read-activiti?processDefinitionKey=' + modelKey +'&version='+version+ '&t='+Math.random();
         this.activitiImg.open=true;
       }
     }

+ 9 - 9
src/views/activiti/form/index.vue

@@ -2,7 +2,7 @@
   <div class="app-container">
     <el-form :inline="true">
       <el-form-item label="标题">
-        <el-input  maxlength="20"
+        <el-input
           v-model="queryParams.title"
           placeholder="请输入标题"
           clearable
@@ -64,7 +64,7 @@
     />
 
     <!-- 添加或修改角色配置对话框 -->
-    <el-dialog :close-on-click-modal="false" :title="title" :visible.sync="open" width="1000px">
+    <el-dialog :title="title" :visible.sync="open" width="1000px">
       <template>
         <el-card
           header="ele-form演示"
@@ -76,7 +76,7 @@
             :isShowResetBtn=true
             :rules="formObj.rules"
             :form-desc="formObj.formDesc"
-            v-model="formObj.formData"
+            :form-data="formObj.formData"
             :request-fn="handleRequest"
             @request-success="handleRequestSuccess"
           ></ele-form>
@@ -91,22 +91,22 @@
     <el-dialog :close-on-click-modal=false :title="fromDataTitle" :visible.sync="fromDataOpen" width="1000px">
       <el-form ref="form" label-width="80px">
         <el-form-item label="模型key">
-          <el-input  maxlength="20"  v-model="myFormData.modelKey"></el-input>
+          <el-input v-model="myFormData.modelKey"></el-input>
         </el-form-item>
         <el-form-item label="模型版本">
-          <el-input  maxlength="20"  v-model="myFormData.modelVersion"></el-input>
+          <el-input v-model="myFormData.modelVersion"></el-input>
         </el-form-item>
         <el-form-item label="模块key">
-          <el-input  maxlength="20"  v-model="myFormData.modulId"></el-input>
+          <el-input v-model="myFormData.modulId"></el-input>
         </el-form-item>
         <el-form-item label="名称">
-          <el-input  maxlength="20"  v-model="myFormData.fName"></el-input>
+          <el-input v-model="myFormData.fName"></el-input>
         </el-form-item>
         <el-form-item label="表单key">
-          <el-input  maxlength="20"  v-model="myFormData.fKey"></el-input>
+          <el-input v-model="myFormData.fKey"></el-input>
         </el-form-item>
         <el-form-item label="表单版本">
-          <el-input  maxlength="20"  v-model="myFormData.fVersion"></el-input>
+          <el-input v-model="myFormData.fVersion"></el-input>
         </el-form-item>
         <el-form-item label="表单json">
           <v-jsoneditor v-model="myFormData.jsonData" height="400px"/>

+ 0 - 106
src/views/activiti/formStart/index.vue

@@ -1,106 +0,0 @@
-<template>
-
-  <ele-form
-    :isShowSubmitBtn=true
-    :isShowBackBtn=false
-    :isShowResetBtn=true
-    :rules="formObj.rules"
-    :form-desc="formObj.formDesc"
-    v-model="formObj.formData"
-    :request-fn="handleRequest"
-    @request-success="handleRequestSuccess"
-  >
-  </ele-form>
-</template>
-<script>
-  import { showForms, commit } from '@/api/activiti/formStart.js'
-
-  export default {
-    name: 'FormStart',
-    props: {
-      instanceId: String
-    },
-    data() {
-      return {
-        // 表单数据
-        formEntity: {
-          fId: {},
-          modelKey: {},
-          modulId: {},
-          fName: {},
-          instanceId: {},
-          fKey: {},
-          fVersion: {},
-          applyUser: {},
-          jsonData: {}
-        },
-        //动态表单数据
-        formObj: {
-          // 表单数据
-          formData: {},
-          formDesc: {},
-          rules: {}
-        }
-      }
-    },
-    // 初始化方法
-    created() {
-    },
-    methods: {
-      // 重置表单新增使用
-      reset() {
-        this.formEntity.fId = undefined
-        this.formEntity.modelKey = undefined
-        this.formEntity.modulId = undefined
-        this.formEntity.fName = undefined
-        this.formEntity.instanceId = undefined
-        this.formEntity.fKey = undefined
-        this.formEntity.fVersion = undefined
-        this.formEntity.applyUser = undefined
-        this.formEntity.jsonData = undefined
-        this.formObj.formDesc = {}
-        this.formObj.rules = {}
-        this.formObj.formData = {}
-      },
-      showForms(processKey) {
-        this.reset()
-        showForms(processKey).then(
-          response => {
-            this.formEntity = response.data
-            this.formEntity.fId=undefined
-            let jsonData = response.data.jsonData
-            let parse = JSON.parse(jsonData)
-            this.formObj.formDesc = parse.formDesc
-            this.formObj.rules = parse.rules
-            let formData = parse.formData
-            if (null != formData) {
-              this.formObj.formData = parse.formData
-            }
-            this.open = true
-            this.title = '提交申请'
-          }
-        )
-      },
-      handleRequest(data) {
-        console.log(data)
-        this.formObj.formData = data
-        let s = JSON.stringify(this.formObj)
-        this.formEntity.jsonData = s
-        commit(this.formEntity).then(response => {
-          if (response.code === 200) {
-            this.msgSuccess(response.msg)
-            //调用父组件关闭方法
-            this.$emit('cancel');
-          } else {
-            this.msgError(response.msg)
-          }
-        })
-        return Promise.resolve()
-      },
-      handleRequestSuccess() {
-        this.$message.success('发送成功')
-      }
-    }
-  }
-</script>
-

+ 0 - 237
src/views/activiti/formsActiviti/allotForm.vue

@@ -1,237 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-card class="box-card">
-      <!-- 添加或修改资产调拨对话框 -->
-      <el-form ref="form" :model="form" label-width="80px" :disabled="true">
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="调出部门" >
-              <treeselect v-model="form.depOutId"
-                          :options="deptOptions"
-                          @select="selectDepart"
-                          placeholder="请选择归属部门"
-                          :disabled="true"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="调出人">
-              <el-select v-model="form.leadOutUserId" @change="changeSelect" placeholder="请选择">
-                <el-option
-                  v-for="item in userOptions"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value">
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-form-item label="物资" >
-          <el-select v-model="form.stockValue" multiple placeholder="请选择">
-            <el-option
-              v-for="item in stockOption"
-              :key="item.aId"
-              :label="item.aName"
-              :value="item.aId">
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="领用部门" >
-              <treeselect
-                v-model="form.depId"
-                :options="deptOptions"
-                placeholder="请选择归属部门"
-                :disabled="true"
-
-              />
-            </el-form-item>
-            {{form.depId}}
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="领用人" >
-              <el-select v-model="form.leadUserId" placeholder="请选择">
-                <el-option
-                  v-for="item in userAllotOptions"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value">
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-form-item label="备注" >
-          <el-input type="textarea" v-model="form.remark" placeholder="请输入备注"/>
-        </el-form-item>
-      </el-form>
-    </el-card>
-    <br/>
-    <el-card class="box-card">
-      <template>
-        <el-tag>提交人&nbsp;:&nbsp;{{form.createUser}}</el-tag>
-        <br/>
-        <br/>
-        <el-tag>提交时间&nbsp;:&nbsp;{{form.createTime}}</el-tag>
-      </template>
-    </el-card>
-  </div>
-</template>
-
-<script>
-  import { getAllot } from '@/api/assets/allot'
-
-  import { outlistStock } from '@/api/assets/stock'
-
-  import { selectlist } from '@/api/system/user'
-
-  import { treeselectAll } from '@/api/system/dept'
-  import Treeselect from '@riophae/vue-treeselect'
-  import '@riophae/vue-treeselect/dist/vue-treeselect.css'
-
-  export default {
-    name: 'Allot',
-    components: { Treeselect },
-    props: ['id'],
-    data() {
-      return {
-        userOptions: undefined,
-        userAllotOptions: undefined,
-        // 弹出层标题
-        title: '',
-        // 是否显示弹出层
-        open: false,
-        // 表单参数
-        form: {},
-        // 部门树选项
-        deptOptions: [],
-        //物资选项集合
-        stockOption: [],
-        stockValue: [],
-        hforms: {
-          title: '查看审核流程',
-          open: false,
-          data: []
-        },
-        activitiImg: {
-          title: '查看审核流程图',
-          open: false,
-          src: ''
-        },
-        instanceId: ''
-      }
-    },
-    created() {
-      this.getTreeselect()
-      this.showForm(this.id)
-    },
-    methods: {
-      /** 查询部门下拉树结构 */
-      getTreeselect() {
-        treeselectAll().then(response => {
-          this.deptOptions = response.data
-        })
-      },
-      // 表单重置
-      reset() {
-        this.form = {
-          aId: undefined,
-          depOutId: undefined,
-          leadOutUserId: null,
-          depId: undefined,
-          leadUserId: null,
-          remark: undefined,
-          instanceId: undefined,
-          taskId: undefined,
-          state: undefined,
-          createBy: undefined,
-          createTime: undefined,
-          updateBy: undefined,
-          updateTime: undefined,
-          stockValue: []
-        }
-        this.userOptions = []
-        this.stockOption = []
-        this.userAllotOptions = []
-        this.resetForm('form')
-      },
-      /** 修改按钮操作 */
-      showForm(id) {
-        this.reset()
-        getAllot(id).then(response => {
-          this.form = response.data
-          let depOutId = this.form.depOutId
-          selectlist(depOutId).then(response => {
-            this.userOptions = response.data
-            this.outlistStock(depOutId, '')
-          })
-          let depId = this.form.depId
-
-          selectlist(depId).then(response => {
-            this.userAllotOptions = response.data
-          })
-          this.form.leadOutUserId = this.form.leadOutUserId + ''
-          this.form.leadUserId = this.form.leadUserId + ''
-          this.open = true
-          this.title = '修改资产调拨'
-        })
-      },
-      // 获取当前选中部门的名称
-      selectDepart(val) {
-        this.form.leadOutUserId = undefined
-        selectlist(val.id).then(response => {
-          this.userOptions = response.data
-          this.outlistStock(val.id, '')
-        })
-      },
-      changeSelect(value) {
-        this.outlistStock('', value)
-      },
-      // 获取当前选中部门的名称
-      selectAllotDepart(val) {
-        selectlist(val.id).then(response => {
-          this.userAllotOptions = response.data
-        })
-      },
-      //获取资源数据
-      outlistStock(depId, userId) {
-        outlistStock(depId, userId).then(response => {
-          this.stockOption = response.data
-        })
-      }
-    },
-    watch: {
-      'form.depOutId': function(newVal) {
-        console.log(newVal)
-        if (newVal == undefined) {
-          console.log(newVal)
-          this.form.stockValue = []
-          this.form.leadOutUserId = undefined
-          this.userOptions = []
-        }
-      },
-      'id': function(newVal){
-        this.showForm(newVal);
-      }
-    }
-  }
-</script>
-<style rel="stylesheet/scss" lang="scss">
-  .demo-table-expand {
-    font-size: 0;
-  }
-
-  .demo-table-expand label {
-    width: 90px;
-    color: #99a9bf;
-  }
-
-  .demo-table-expand .el-form-item {
-    margin-right: 0;
-    margin-bottom: 0;
-    width: 50%;
-  }
-</style>
-

+ 31 - 89
src/views/activiti/formsActiviti/index.vue

@@ -1,8 +1,5 @@
 <template>
-  <div>
-    <template>
-      <component :is="fromName" :id="id"></component>
-    </template>
+  <div >
     <template v-for="(fromReData,i) in forms.data">
       <el-divider content-position="left">{{fromReData.taskName}}</el-divider>
       <el-card class="box-card">
@@ -12,13 +9,22 @@
           :isShowResetBtn=false
           :rules="fromReData.formObj.rules"
           :form-desc="fromReData.formObj.formDesc"
-          v-model="fromReData.formObj.formData"
+          :form-data="fromReData.formObj.formData"
         >
         </ele-form>
       </el-card>
       <br/>
       <el-card class="box-card">
-        <template>
+        <template v-if="i===0">
+          <el-tag>发起人&nbsp;:&nbsp;{{fromReData.createUser}}</el-tag>
+          <br/>
+          <br/>
+          <el-tag>发起部门&nbsp;:&nbsp;{{fromReData.createDept}}</el-tag>
+          <br/>
+          <br/>
+          <el-tag>发起时间&nbsp;:&nbsp;{{fromReData.createTime}}</el-tag>
+        </template>
+        <template v-else>
           <el-tag>处理人&nbsp;:&nbsp;{{fromReData.createUser}}</el-tag>
           <br/>
           <br/>
@@ -35,44 +41,22 @@
 </template>
 <script>
   import { showForms } from '@/api/activiti/formsActiviti.js'
-
-  import { getHis } from '@/api/assets/his.js'
-
-  //入库表单
-  import inputForm from '@/views/activiti/formsActiviti/inputForm.vue'
-
-  import outForm from '@/views/activiti/formsActiviti/outForm.vue'
-
-  import scrapForm from '@/views/activiti/formsActiviti/scrapForm.vue'
-
-  import allotForm from '@/views/activiti/formsActiviti/allotForm.vue'
-
   export default {
-    components: {
-      inputForm,
-      outForm,
-      scrapForm,
-      allotForm,
-    },
-    props: {
-      instanceId: String
+    props:{
+      instanceId:String
     },
     data: function() {
       return {
-        currentView: undefined,
-        id:undefined,
         forms: {
           data: []
-        },
-        fromName: undefined
+        }
       }
     },
     // 初始化方法
     created() {
     },
     methods: {
-
-      showHiForms(instanceId) {
+      showForms(instanceId) {
         showForms(instanceId).then(response => {
           if (response.code === 200) {
             let list = response.data
@@ -83,7 +67,7 @@
               let mapElement = list[i].formObj.formDesc
               for (var key in mapElement) {
                 let type = mapElement[key].type
-                mapElement[key].disabled = true
+                //mapElement[key].disabled=true;
                 // if ('upload-file' === type) {
                 //   let canDelete = mapElement[key].attrs.isCanDelete
                 //   if (canDelete !== undefined) {
@@ -103,66 +87,24 @@
             this.msgError(response.msg)
           }
         })
-      },
-      showForms(instanceId) {
-        getHis(instanceId).then(response => {
-          let data = response.data
-          let tableName = data.tableName
-          console.log(data)
-          if (response.code === 200) {
-            switch (tableName) {
-              case 'db_assets_stock_in':
-                this.fromName = 'inputForm'
-                this.id = data.tableId;
-                this.showHiForms(instanceId)
-                break
-              case 'db_assets_stock_out':
-                this.fromName = 'outForm'
-                this.id = data.tableId;
-                this.showHiForms(instanceId)
-                break
-              case 'db_assets_stock_scrap':
-                this.fromName = 'scrapForm'
-                this.id = data.tableId;
-                this.showHiForms(instanceId)
-                break
-              case 'db_assets_stock_allot':
-                this.fromName = 'allotForm'
-                this.id = data.tableId;
-                this.showHiForms(instanceId)
-                break
-              default:
-                restatus = '其他状态'
-            }
-          } else {
-            this.msgError(response.msg)
-          }
-        })
       }
     }
   }
 </script>
 
 <style scoped>
-  .el-upload-list--picture-card .el-upload-list__item-actions span + span {
-    margin-left: 0;
-  }
-
-  .el-upload-list__item-actions .el-icon-delete {
-    display: none;
-    width: 0;
-    height: 0
-  }
-
-  .ele-upload-file-uploader {
-    display: none;
-  }
-
-  .ele-upload-list__item-content-action .el-link.el-link--danger .el-link--inner {
-    display: none;
-  }
-
-  .el-input.is-disabled .el-input__inner {
-    color: #333;
-  }
+  /* .el-upload-list--picture-card .el-upload-list__item-actions span+span {*/
+  /*  margin-left: 0;*/
+  /*}*/
+  /*.el-upload-list__item-actions .el-icon-delete{*/
+  /*  display: none;*/
+  /*  width:0;*/
+  /*  height:0*/
+  /*}*/
+  /*.ele-upload-file-uploader{*/
+  /*  display: none;*/
+  /*}*/
+  /*.ele-upload-list__item-content-action .el-link.el-link--danger .el-link--inner{*/
+  /*  display: none;*/
+  /*}*/
 </style>

+ 0 - 231
src/views/activiti/formsActiviti/inputForm.vue

@@ -1,231 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-divider content-position="left">入库申请</el-divider>
-    <el-card class="box-card">
-    <el-form ref="form" :model="form"  label-width="80px" :disabled="single">
-      <el-form-item label="入库类型 ">
-        <el-select v-model="form.storageType" placeholder="请选择入库类型 ">
-          <el-option
-            v-for="dict in storageTypeOptions"
-            :key="dict.dictValue"
-            :label="dict.dictLabel"
-            :value="dict.dictValue"
-          ></el-option>
-        </el-select>
-      </el-form-item>
-      <el-row>
-        <el-col :span="10">
-          <el-form-item label="入库时间" prop="wareTime">
-            <el-date-picker clearable size="small"
-                            v-model="form.wareTime"
-                            type="date"
-                            value-format="yyyy-MM-dd"
-                            placeholder="选择入库时间">
-            </el-date-picker>
-          </el-form-item>
-        </el-col>
-        <el-col :span="10">
-          <el-form-item label="制单人" prop="sysUserId">
-            <el-input  maxlength="20"  v-model="form.sysUser" placeholder="制单人"/>
-          </el-form-item>
-        </el-col>
-      </el-row>
-      <el-form-item label="资产类型" prop="dbMaterielId"  >
-        <treeselect :disabled="single"
-          v-model="form.dbMaterielId"
-          :options="treeOptions"
-          :show-count="true"
-          placeholder="选择上级菜单"
-        />
-      </el-form-item>
-      <el-form-item label="资产编号" prop="aNumber">
-        <el-input  maxlength="20"  v-model="form.aNumber" placeholder="请输入资产编号"/>
-      </el-form-item>
-      <el-form-item label="资产名称" prop="aName">
-        <el-input  maxlength="20"  v-model="form.aName" placeholder="请输入资产名称"/>
-      </el-form-item>
-      <el-form-item label="规格型号">
-        <el-input  maxlength="20"  v-model="form.specType" placeholder="请输入型号"/>
-      </el-form-item>
-      <el-form-item label="供应商" prop="dbSupplierId">
-        <el-select v-model="form.dbSupplierId" placeholder="请选择入库类型 " clearable size="small">
-          <el-option
-            v-for="item in options"
-            :key="item.value"
-            :label="item.label"
-            :value="item.value">
-          </el-option>
-        </el-select>
-      </el-form-item>
-      <el-row>
-        <el-col :span="10">
-          <el-form-item label="保质期" prop="shelfLifeEnd">
-            <el-date-picker clearable size="small" style="width: 200px"
-                            v-model="form.shelfLifeEnd"
-                            type="date"
-                            value-format="yyyy-MM-dd"
-                            placeholder="选择保质期结束">
-            </el-date-picker>
-          </el-form-item>
-        </el-col>
-        <el-col :span="10">
-          <el-form-item label="结束" prop="shelfLifeEnd">
-            <el-date-picker clearable size="small" style="width: 200px"
-                            v-model="form.shelfLifeEnd"
-                            type="date"
-                            value-format="yyyy-MM-dd"
-                            placeholder="选择保质期结束">
-            </el-date-picker>
-          </el-form-item>
-        </el-col>
-      </el-row>
-    </el-form>
-    </el-card>
-    <br/>
-    <el-card class="box-card">
-      <template >
-        <el-tag>提交人&nbsp;:&nbsp;{{form.createUser}}</el-tag>
-        <br/>
-        <br/>
-        <el-tag>提交时间&nbsp;:&nbsp;{{form.createTime}}</el-tag>
-      </template>
-    </el-card>
-  </div>
-</template>
-
-<script>
-  import { inputForm } from '@/api/assets/input'
-
-  import { treelist } from '@/api/system/materiel'
-
-  import { select } from '@/api/system/supplier'
-
-  import Treeselect from '@riophae/vue-treeselect'
-  import '@riophae/vue-treeselect/dist/vue-treeselect.css'
-
-  export default {
-    components: {
-      Treeselect
-    },
-    props: ['id'],
-    name: 'Input',
-    data() {
-      return {
-        id:this.id,
-        // 遮罩层
-        loading: true,
-        // 选中数组
-        ids: [],
-        // 非单个禁用
-        single: true,
-        // 非多个禁用
-        multiple: true,
-        // 总条数
-        total: 0,
-        // 资产入库表格数据
-        inputList: [],
-        // 弹出层标题
-        title: '',
-        // 是否显示弹出层
-        open: false,
-        // 入库类型 字典
-        storageTypeOptions: [],
-        // 查询参数
-        queryParams: {
-          pageNum: 1,
-          pageSize: 10,
-          aNumber: undefined,
-          aName: undefined,
-          storageType: undefined,
-          wareTime: undefined,
-          dbMaterielId: undefined,
-          dbSupplierId: undefined,
-          specType: undefined,
-          sysUserId: undefined,
-          instanceId: undefined,
-          shelf: undefined,
-          shelfLifeStart: undefined,
-          shelfLifeEnd: undefined,
-          state: undefined
-        },
-        // 表单参数
-        form: {},
-        // 表单校验
-
-        treeOptions: [],
-        options: []
-
-      }
-    },
-    created() {
-      this.getDicts('storage_type').then(response => {
-        this.storageTypeOptions = response.data
-      })
-      this.treelist()
-      this.select()
-      this.showForm(this.id)
-    },
-    methods: {
-      // 入库类型 字典翻译
-      storageTypeFormat(row, column) {
-        return this.selectDictLabel(this.storageTypeOptions, row.storageType)
-      },
-      // 入库类型 字典翻译
-      selectVo(row, column) {
-        return this.selectFormat(this.options, row.dbSupplierId + '')
-      },
-      // 表单重置
-      reset() {
-        this.form = {
-          aId: undefined,
-          aNumber: undefined,
-          aName: undefined,
-          storageType: undefined,
-          wareTime: undefined,
-          dbMaterielId: undefined,
-          dbSupplierId: undefined,
-          specType: undefined,
-          sysUserId: undefined,
-          remark: undefined,
-          instanceId: undefined,
-          taskId: undefined,
-          shelf: undefined,
-          shelfLifeStart: undefined,
-          shelfLifeEnd: undefined,
-          state: undefined,
-          createBy: undefined,
-          createTime: undefined,
-          updateBy: undefined,
-          updateTime: undefined
-        }
-        this.resetForm('form')
-      },
-      /** 修改按钮操作 */
-      showForm(id) {
-        inputForm(id).then(response => {
-          this.form = response.data
-          this.form.dbSupplierId = this.form.dbSupplierId + ''
-          this.form.storageType = this.form.storageType + ''
-          this.open = true
-          this.title = '修改资产入库'
-        })
-      },
-      treelist() {
-        treelist().then(response => {
-          this.treeOptions = response.data
-        })
-      },
-      select() {
-        select().then(response => {
-          this.options = response.data
-        })
-      }
-
-    },
-    watch: {
-      'id': function(newVal){
-        this.showForm(newVal);
-      }
-    }
-  }
-</script>

+ 0 - 186
src/views/activiti/formsActiviti/outForm.vue

@@ -1,186 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-card class="box-card">
-      <!-- 添加或修改资产出库对话框 -->
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px" :disabled="true">
-        <el-form-item label="出库类型">
-          <el-select v-model="form.stockType" placeholder="请选择出库类型">
-            <el-option
-              v-for="dict in stockTypeOptions"
-              :key="dict.dictValue"
-              :label="dict.dictLabel"
-              :value="dict.dictValue"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="出库时间" prop="stockOutTime">
-          <el-date-picker clearable size="small" style="width: 200px"
-                          v-model="form.stockOutTime"
-                          type="date"
-                          value-format="yyyy-MM-dd"
-                          placeholder="选择出库时间">
-          </el-date-picker>
-        </el-form-item>
-
-        <el-form-item label="领用部门" prop="depName">
-          <el-input v-model="form.depName" placeholder="请输入领用部门名称" :disabled="true"/>
-        </el-form-item>
-
-        <el-form-item label="领用人" prop="leadUser">
-          <el-input v-model="form.leadUser" placeholder="请输入领用人" :disabled="true"/>
-        </el-form-item>
-        <el-form-item label="资产类型" prop="dbMaterielId">
-          <treeselect :disabled="true"
-            v-model="form.dbMaterielId"
-            :options="treeOptions"
-            :show-count="true" @select="selectDepart"
-            placeholder="选择上级菜单"
-          />
-        </el-form-item>
-        <el-form-item label="资产" prop="dbAsStId">
-          <el-select v-model="form.dbAsStId" placeholder="请选择出库类型" @change="setData">
-            <el-option
-              v-for="dict in stockOption"
-              :key="dict.aId"
-              :label="dict.aName"
-              :value="dict.aId"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-
-        <el-form-item label="资产编号">
-          <el-input v-model="form.dbAsStNumber" placeholder="请输入备注" :disabled="true"/>
-        </el-form-item>
-        <el-form-item label="备注" prop="remark">
-          <el-input type="textarea" v-model="form.remark" placeholder="请输入备注"/>
-        </el-form-item>
-      </el-form>
-    </el-card>
-    <br/>
-    <el-card class="box-card">
-      <template >
-        <el-tag>提交人&nbsp;:&nbsp;{{form.createUser}}</el-tag>
-        <br/>
-        <br/>
-        <el-tag>提交时间&nbsp;:&nbsp;{{form.createTime}}</el-tag>
-      </template>
-    </el-card>
-  </div>
-</template>
-
-<script>
-  import { getOut } from '@/api/assets/out'
-
-  import { selectlistStock, selectStockDictLabel } from '@/api/assets/stock'
-
-  import { treelist } from '@/api/system/materiel'
-
-  import Treeselect from '@riophae/vue-treeselect'
-  import '@riophae/vue-treeselect/dist/vue-treeselect.css'
-
-  export default {
-    name: 'Out',
-    components: {
-      Treeselect
-    },
-    props: ['id'],
-    data() {
-      return {
-        id: this.id,
-        // 弹出层标题
-        title: '',
-        // 是否显示弹出层
-        open: false,
-        // 出库类型字典
-        stockTypeOptions: [],
-        // 表单参数
-        form: {},
-        user: {
-          id: undefined,
-          name: undefined,
-          deptId: undefined,
-          deptName: undefined
-        },
-        stockOption: [],
-        treeOptions: []
-      }
-    },
-    created() {
-      this.getDicts('stock_type').then(response => {
-        this.stockTypeOptions = response.data
-      })
-      this.treelist()
-      this.showForm(this.id)
-    },
-    methods: {
-      treelist() {
-        treelist().then(response => {
-          this.treeOptions = response.data
-        })
-      },
-      // 获取当前选中部门的名称
-      selectDepart(val) {
-        let dbMaterielId = val.id
-        this.stockOption = []
-        this.form.dbAsStId = undefined
-        this.selectlistStock(dbMaterielId)
-      },
-      selectlistStock(dbMaterielId) {
-        selectlistStock(dbMaterielId).then(response => {
-          this.stockOption = response.data
-          console.log(this.stockOption)
-        })
-      },
-      setData(val) {
-        console.log(val)
-        var obj = selectStockDictLabel(this.stockOption, val)
-        console.log(obj)
-        this.form.dbAsStName = obj.aName
-        this.form.dbAsStNumber = obj.aNumber
-      },
-      // 出库类型字典翻译
-      stockTypeFormat(row, column) {
-        return this.selectDictLabel(this.stockTypeOptions, row.stockType)
-      },
-      // 表单重置
-      reset() {
-        this.form = {
-          aId: undefined,
-          stockType: undefined,
-          stockOutTime: undefined,
-          depId: undefined,
-          depName: undefined,
-          leadUserId: undefined,
-          leadUser: undefined,
-          dbMaterielId: undefined,
-          dbAsStId: undefined,
-          dbAsStName: undefined,
-          dbAsStNumber: undefined,
-          remark: undefined,
-          instanceId: undefined,
-          state: undefined,
-          createBy: undefined,
-          createTime: undefined,
-          updateBy: undefined,
-          updateTime: undefined
-        }
-        this.resetForm('form')
-      },
-      /** 修改按钮操作 */
-      showForm(id) {
-        this.reset()
-        getOut(id).then(response => {
-          this.form = response.data
-          this.selectlistStock(this.form.dbMaterielId)
-          this.open = true
-          this.title = '修改资产出库'
-        })
-      }
-    },
-    watch: {
-      'id': function(newVal){
-        this.showForm(newVal);
-      }
-    }
-  }
-</script>

+ 0 - 206
src/views/activiti/formsActiviti/scrapForm.vue

@@ -1,206 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-card class="box-card">
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px" :disabled="true">
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="报废类型">
-              <el-select v-model="form.scrapType" placeholder="请选择报废类型">
-                <el-option
-                  v-for="dict in scrapTypeOptions"
-                  :key="dict.dictValue"
-                  :label="dict.dictLabel"
-                  :value="dict.dictValue"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="报废时间" prop="scrapTime">
-              <el-date-picker clearable size="small"
-                              v-model="form.scrapTime"
-                              type="date"
-                              value-format="yyyy-MM-dd"
-                              placeholder="选择报废时间">
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="处理部门" prop="depName">
-              <el-input v-model="form.depName" placeholder="请输入处理部门" :disabled="true"/>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="处理人" prop="scrapUser">
-              <el-input v-model="form.scrapUser" placeholder="请输入处理人" :disabled="true"/>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="资产类型" prop="dbMaterielId">
-              <treeselect
-                v-model="form.dbMaterielId"
-                :options="treeOptions"
-                :show-count="true" @select="selectDepart" :disabled="true"
-                placeholder="选择上级菜单"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="资产" prop="dbAsStId">
-              <el-select v-model="form.dbAsStId" placeholder="请选择资产" @change="setData">
-                <el-option
-                  v-for="dict in stockOption"
-                  :key="dict.aId"
-                  :label="dict.aName"
-                  :value="dict.aId"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-form-item label="资产编号" prop="dbAsStNumber">
-          <el-input v-model="form.dbAsStNumber" placeholder="请输入资产编号" :disabled="true"/>
-        </el-form-item>
-        <el-form-item label="供应商" prop="dbSupplierName">
-          <el-input v-model="form.dbSupplierName" placeholder="请输入供应商名称" :disabled="true"/>
-        </el-form-item>
-        <el-form-item label="报废原因" prop="scrapReason">
-          <el-input v-model="form.scrapReason" type="textarea" placeholder="请输入内容"/>
-        </el-form-item>
-      </el-form>
-    </el-card>
-    <br/>
-    <el-card class="box-card">
-      <template>
-        <el-tag>提交人&nbsp;:&nbsp;{{form.scrapUser}}</el-tag>
-        <br/>
-        <br/>
-        <el-tag>提交时间&nbsp;:&nbsp;{{form.createTime}}</el-tag>
-      </template>
-    </el-card>
-  </div>
-</template>
-
-<script>
-  import {
-    getScrap
-  } from '@/api/assets/scrap'
-  import { selectlistStock, selectStockDictLabel } from '@/api/assets/stock'
-
-  import { treelist } from '@/api/system/materiel'
-
-  import Treeselect from '@riophae/vue-treeselect'
-  import '@riophae/vue-treeselect/dist/vue-treeselect.css'
-
-  export default {
-    name: 'Scrap',
-    components: {
-      Treeselect
-    },
-    props: ['id'],
-    data() {
-      return {
-        id: this.id,
-        // 弹出层标题
-        title: '',
-        // 是否显示弹出层
-        open: false,
-        // 报废类型字典
-        scrapTypeOptions: [],
-        // 表单参数
-        form: {},
-        treeOptions: [],
-        stockOption: [],
-        user: {
-          id: undefined,
-          name: undefined,
-          deptId: undefined,
-          deptName: undefined
-        }
-      }
-    },
-    created() {
-      this.getDicts('scrap_type').then(response => {
-        this.scrapTypeOptions = response.data
-      })
-      this.treelist()
-      this.showForm(this.id)
-    },
-    methods: {
-      // 表单重置
-      reset() {
-        this.form = {
-          aId: undefined,
-          scrapType: undefined,
-          dbMaterielId: undefined,
-          dbSupplierId: undefined,
-          dbSupplierName: undefined,
-          dbAsStId: undefined,
-          dbAsStName: undefined,
-          dbAsStNumber: undefined,
-          scrapTime: undefined,
-          depId: undefined,
-          depName: undefined,
-          scrapReason: undefined,
-          scrapUserId: undefined,
-          scrapUser: undefined,
-          remark: undefined,
-          instanceId: undefined,
-          taskId: undefined,
-          state: undefined,
-          createBy: undefined,
-          createTime: undefined,
-          updateBy: undefined,
-          updateTime: undefined
-        }
-        this.resetForm('form')
-      },
-      /** 修改按钮操作 */
-      showForm(aid) {
-        this.reset()
-        getScrap(aid).then(response => {
-          this.form = response.data
-          this.selectlistStock(this.form.dbMaterielId)
-        })
-      },
-      treelist() {
-        treelist().then(response => {
-          this.treeOptions = response.data
-        })
-      },
-      // 获取当前选中部门的名称
-      selectDepart(val) {
-        let dbMaterielId = val.id
-        this.stockOption = []
-        this.form.dbAsStId = undefined
-        this.selectlistStock(dbMaterielId)
-      },
-      selectlistStock(dbMaterielId) {
-        selectlistStock(dbMaterielId).then(response => {
-          this.stockOption = response.data
-          console.log(this.stockOption)
-        })
-      },
-      setData(val) {
-        console.log(val)
-        var obj = selectStockDictLabel(this.stockOption, val)
-        console.log(obj)
-        this.form.dbAsStName = obj.aName
-        this.form.dbAsStNumber = obj.aNumber
-        //供应商id
-        this.form.dbSupplierId = obj.sId
-        //供应商id
-        this.form.dbSupplierName = obj.sName
-      }
-    },
-    watch: {
-      'id': function(newVal){
-        this.showForm(newVal);
-      }
-    }
-  }
-</script>

+ 1 - 1
src/views/activiti/image/index.vue

@@ -22,7 +22,7 @@
         this.activitiImg.src = undefined
         let instanceId = row.instanceId
         let modelKey = row.modelKey
-        instanceId = process.env.VUE_APP_BASE_API + '/leaveNew/read-resource?processDefinitionKey=' + modelKey + '&processInstanceId=' + instanceId
+        instanceId = process.env.VUE_APP_BASE_URL + '/leaveNew/read-resource?processDefinitionKey=' + modelKey + '&processInstanceId=' + instanceId
         this.$alert(`<img src=${instanceId} >`, '查看', {
           dangerouslyUseHTMLString: true,
           customClass: 'activiti-image-class'

+ 0 - 21
src/views/activiti/modeler/index.vue

@@ -1,21 +0,0 @@
-<template>
-  <div class="app-container">
-    <iframe  src="http://localhost:8088" frameborder="0" width="100%"
-             height="100%" ></iframe>
-  </div>
-</template>
-
-<script>
-  export default {
-
-  }
-</script>
-
-<style scoped>
-  .app-container{
-    height:1000px;
-  }
-</style>
-
-
-

+ 21 - 28
src/views/activiti/processInstance/index.vue

@@ -18,20 +18,23 @@
         <el-button type="info" icon="el-icon-refresh-right" size="mini" @click="reList">
           清空
         </el-button>
-        <el-button type="danger" icon="el-icon-delete" size="mini" @click="deleteTi">
-          删除
-        </el-button>
+        <!--        <el-button type="danger" icon="el-icon-delete" size="mini" @click="deleteTi">-->
+        <!--          删除-->
+        <!--        </el-button>-->
       </el-form-item>
     </el-form>
     <el-table v-loading="loading" ref="multipleTable" :data="tableData" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center"/>
+      <!--      <el-table-column-->
+      <!--        type="selection"-->
+      <!--        width="55">-->
+      <!--      </el-table-column>-->
       <el-table-column label="序号" type="index" align="center">
         <template slot-scope="scope">
           <span>{{ (queryParams.pageNum-1) * queryParams.pageSize + (scope.$index + 1) }}</span>
         </template>
       </el-table-column>
       <el-table-column label="名称" prop="processDefinitionName" width="80px"/>
-      <el-table-column label="key" prop="processDefinitionKey" :show-overflow-tooltip="true" width="180px"/>
+      <el-table-column label="key" prop="processDefinitionKey" :show-overflow-tooltip="true" width="80px"/>
       <el-table-column label="版本" prop="processDefinitionVersion" width="60px"/>
       <el-table-column label="开始时间" prop="startTime"/>
       <el-table-column label="当前任务" prop="nextTask"/>
@@ -45,7 +48,7 @@
           </template>
         </template>
       </el-table-column>
-      <el-table-column label="状态" width="80px">
+      <el-table-column label="状态">
         <template slot-scope="scope">
           <template v-if="scope.row.suspended==false">
             激活
@@ -75,7 +78,7 @@
         </template>
       </el-table-column>
     </el-table>
-    <el-dialog :close-on-click-modal="false" :title="title" :visible.sync="open" width="700px">
+    <el-dialog :title="title" :visible.sync="open" width="700px">
       <el-form>
         <el-form-item label="选择任务">
           <el-select v-model="taskId" placeholder="请选择">
@@ -110,6 +113,9 @@
     />
   </div>
 </template>
+<style scoped>
+
+</style>
 <script>
   import {
     list,
@@ -120,14 +126,11 @@
     listUser,
     transToOffice,
     entrust
-  } from '@/api/activiti/processInstance'
+  } from '@/api/activiti/processInstance.js'
 
   export default {
-    name: 'ProcessInstance',
-    data() {
+    data: function() {
       return {
-        // 遮罩层
-        loading: false,
         // 查询参数
         queryParams: {
           pageNum: 1,
@@ -167,7 +170,7 @@
       /** 查询角色列表 */
       getList() {
         this.loading = true
-        list(this.queryParams).then(
+        list(this.addDateRange(this.queryParams)).then(
           response => {
             if (response.code === 200) {
               this.tableData = response.rows
@@ -191,19 +194,10 @@
             this.msgError('你没有选择文章')
             return
           }
-          delTitle(ids).then(
-            response => {
-              if (200 === response.code) {
-                this.msgSuccess('成功')
-                this.reIds()
-                this.getList()
-              } else {
-                this.msgError(response.msg)
-              }
-
-            }
-          )
-
+          delTitle(ids)
+          this.msgSuccess('成功')
+          this.reIds()
+          this.reList()
         }).catch(() => {
           this.msgSuccess('已取消删除')
         })
@@ -246,13 +240,12 @@
             response => {
               if (200 === response.code) {
                 this.msgSuccess(response.msg)
-                this.getList()
               } else {
                 this.msgError(response.msg)
               }
             }
           )
-
+          this.reList()
         }).catch(() => {
           this.msgSuccess('已取消删除')
         })

+ 0 - 672
src/views/assets/allot/index.vue

@@ -1,672 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
-      <el-form-item label="调出部门" prop="deptOutName">
-        <el-input
-          v-model="queryParams.deptOutName"
-          placeholder="请输入调出部门"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="调出人" prop="userOutName">
-        <el-input
-          v-model="queryParams.userOutName"
-          placeholder="请输入调出人"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="领用部门" prop="deptName">
-        <el-input
-          v-model="queryParams.deptName"
-          placeholder="请输入领用部门"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="领用人" prop="userName">
-        <el-input
-          v-model="queryParams.userName"
-          placeholder="请输入领用人"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-
-
-      <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
-      </el-form-item>
-    </el-form>
-
-    <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
-        <el-button
-          type="primary"
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-hasPermi="['assets:allot:add']"
-        >新增
-        </el-button>
-      </el-col>
-      <!--      <el-col :span="1.5">-->
-      <!--        <el-button-->
-      <!--          type="success"-->
-      <!--          icon="el-icon-edit"-->
-      <!--          size="mini"-->
-      <!--          :disabled="single"-->
-      <!--          @click="handleUpdate"-->
-      <!--          v-hasPermi="['assets:allot:edit']"-->
-      <!--        >修改-->
-      <!--        </el-button>-->
-      <!--      </el-col>-->
-      <!--      <el-col :span="1.5">-->
-      <!--        <el-button-->
-      <!--          type="danger"-->
-      <!--          icon="el-icon-delete"-->
-      <!--          size="mini"-->
-      <!--          :disabled="multiple"-->
-      <!--          @click="handleDelete"-->
-      <!--          v-hasPermi="['assets:allot:remove']"-->
-      <!--        >删除-->
-      <!--        </el-button>-->
-      <!--      </el-col>-->
-      <!--      <el-col :span="1.5">-->
-      <!--        <el-button-->
-      <!--          type="warning"-->
-      <!--          icon="el-icon-download"-->
-      <!--          size="mini"-->
-      <!--          @click="handleExport"-->
-      <!--          v-hasPermi="['assets:allot:export']"-->
-      <!--        >导出-->
-      <!--        </el-button>-->
-      <!--      </el-col>-->
-    </el-row>
-
-    <el-table v-loading="loading" :data="allotList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center"/>
-
-      <el-table-column label="调出部" align="center" prop="deptOutName"/>
-      <el-table-column label="调出人" align="center" prop="userOutName"/>
-      <el-table-column label="领用部门" align="center" prop="deptName"/>
-      <el-table-column label="领用人" align="center" prop="userName"/>
-      <el-table-column label="调拨物资" align="center" prop="allotName"/>
-      <el-table-column label="状态" align="center" prop="state" :formatter="statusFormat"/>
-      <el-table-column label="创建时间" align="center" prop="createTime"/>
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" width="300">
-        <template slot-scope="scope">
-          <template v-if="scope.row.instanceId==null">
-            <el-button
-              type="success"
-              icon="el-icon-edit"
-              size="small"
-              @click="commit(scope.row)"
-              v-hasPermi="['assets:input:edit']"
-            >提交审核
-            </el-button>
-            <el-button
-              type="success"
-              icon="el-icon-edit"
-              size="small"
-              @click="handleUpdate(scope.row)"
-              v-hasPermi="['assets:allot:edit']"
-            >修改
-            </el-button>
-            <el-button
-              type="danger"
-              icon="el-icon-delete"
-              size="small"
-              @click="handleDelete(scope.row)"
-              v-hasPermi="['assets:allot:remove']"
-            >删除
-            </el-button>
-          </template>
-          <template v-if="scope.row.instanceId!=null">
-            <template v-if="scope.row.taskId==undefined">
-              <el-button
-                size="small" type="success"
-                @click="showForms(scope.$index, scope.row)">查看
-              </el-button>
-              <el-button
-                size="small" type="warning"
-                @click="showImage(scope.$index, scope.row)">进度查看
-              </el-button>
-            </template>
-          </template>
-          <template v-if="scope.row.taskId!=undefined">
-            <el-button
-              type="success"
-              icon="el-icon-edit"
-              size="small"
-              @click="recommit(scope.row)"
-              v-hasPermi="['assets:allot:edit']"
-            >重新提交审核
-            </el-button>
-            <el-button
-              size="small" type="success"
-              @click="showForms(scope.$index, scope.row)">查看
-            </el-button>
-            <el-button
-              size="small" type="warning"
-              @click="showImage(scope.$index, scope.row)">进度查看
-            </el-button>
-          </template>
-        </template>
-      </el-table-column>
-    </el-table>
-
-    <pagination
-      v-show="total>0"
-      :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
-      @pagination="getList"
-    />
-
-    <!-- 添加或修改资产调拨对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="800px" :close-on-click-modal="false">
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="调出部门" prop="depOutId">
-              <treeselect v-model="form.depOutId"
-                          :options="deptOptions"
-                          @select="selectDepart"
-                          placeholder="请选择归属部门"/>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="调出人">
-              <el-select v-model="form.leadOutUserId" @change="changeSelect" clearable placeholder="全部">
-                <el-option
-                  v-for="item in userOptions"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value">
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-form-item label="物资" prop="stockValue">
-          <el-select v-model="form.stockValue" multiple placeholder="请选择">
-            <el-option
-              v-for="item in stockOption"
-              :key="item.aId"
-              :label="item.aNumber+'-'+item.aName"
-              :value="item.aId">
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="领用部门" prop="depId">
-              <treeselect
-                v-model="form.depId"
-                :options="deptOptions"
-                @select="selectAllotDepart"
-                placeholder="请选择归属部门"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="领用人" prop="leadUserId">
-              <el-select v-model="form.leadUserId" clearable placeholder="全部">
-                <el-option
-                  v-for="item in userAllotOptions"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value">
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-form-item label="备注" prop="remark">
-          <el-input type="textarea" v-model="form.remark" placeholder="请输入备注"/>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <template v-if="form.taskId==undefined">
-          <el-button type="primary" @click="submitForm">确 定</el-button>
-        </template>
-        <template v-else-if="form.taskId!=undefined">
-          <el-button type="primary" @click="remoiit">提交审核</el-button>
-        </template>
-        <el-button @click="cancel">取 消</el-button>
-      </div>
-    </el-dialog>
-
-    <!--查看审核流程表单-->
-    <el-dialog :close-on-click-modal="false" :title="hforms.title" :visible.sync="hforms.open" width="1000px">
-      <!--历史表单组件-->
-      <addEnterprise ref="addEnterprise"/>
-    </el-dialog>
-
-    <el-dialog :close-on-click-modal="false" :title="activitiImg.title" :visible.sync="activitiImg.open" width="1000px">
-      <el-image :src="activitiImg.src"></el-image>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-  import {
-    listAllot,
-    getAllot,
-    delAllot,
-    addAllot,
-    commit,
-    recommit,
-    updateAllot,
-    exportAllot
-  } from '@/api/assets/allot'
-
-  import { outlistStock } from '@/api/assets/stock'
-
-  import { selectlist } from '@/api/system/user'
-
-  import { assetsTreeselect } from '@/api/system/dept'
-  import Treeselect from '@riophae/vue-treeselect'
-  import '@riophae/vue-treeselect/dist/vue-treeselect.css'
-  //历史流程表单
-  import addEnterprise from '@/views/activiti/formsActiviti/index.vue'
-
-  //流程开始
-  import { getByKey } from '@/api/activiti/definition'
-
-  export default {
-    name: 'Allot',
-    components: { Treeselect, addEnterprise },
-    data() {
-      return {
-        userOptions: undefined,
-        userAllotOptions: undefined,
-        // 遮罩层
-        loading: true,
-        // 选中数组
-        ids: [],
-        // 非单个禁用
-        single: true,
-        // 非多个禁用
-        multiple: true,
-        // 总条数
-        total: 0,
-        // 资产调拨表格数据
-        allotList: [],
-        // 弹出层标题
-        title: '',
-        // 是否显示弹出层
-        open: false,
-        // 查询参数
-        queryParams: {
-          pageNum: 1,
-          pageSize: 10,
-          deptOutName: undefined,
-          userOutName: undefined,
-          deptName: undefined,
-          userName: undefined,
-          instanceId: undefined,
-          state: undefined
-        },
-        // 表单参数
-        form: {},
-        // 表单校验
-        rules: {
-          depOutId: [
-            { required: true, message: '调出部门id不能为空', trigger: 'blur' }
-          ],
-          leadOutUserId: [
-            { required: true, message: '调出人id不能为空', trigger: 'blur' }
-          ],
-          depId: [
-            { required: true, message: '领用部门id不能为空', trigger: 'blur' }
-          ],
-          stockValue: [
-            { required: true, message: '领用物资不能为空', trigger: 'blur' }
-          ],
-          leadUserId: [
-            { required: true, message: '领用人不能为空', trigger: 'blur' }
-          ]
-        },
-        // 部门树选项
-        deptOptions: [],
-        //物资选项集合
-        stockOption: [],
-        stockValue: [],
-        hforms: {
-          title: '查看审核流程',
-          open: false,
-          data: []
-        },
-        activitiImg: {
-          title: '查看审核流程图',
-          open: false,
-          src: ''
-        },
-        instanceId: ''
-      }
-    },
-    created() {
-      this.processDefinitionKey()
-      this.getList()
-      this.getTreeselect()
-    },
-    methods: {
-      /** 查询部门下拉树结构 */
-      getTreeselect() {
-        assetsTreeselect().then(response => {
-          this.deptOptions = response.data
-        })
-      },
-      /** 查询资产调拨列表 */
-      getList() {
-        this.loading = true
-        listAllot(this.queryParams).then(response => {
-          this.allotList = response.rows
-          this.total = response.total
-          this.loading = false
-        })
-      },
-      // 取消按钮
-      cancel() {
-        this.open = false
-        this.reset()
-      },
-      // 表单重置
-      reset() {
-        this.form = {
-          aId: undefined,
-          depOutId: undefined,
-          leadOutUserId: null,
-          depId: undefined,
-          leadUserId: null,
-          remark: undefined,
-          instanceId: undefined,
-          taskId: undefined,
-          state: undefined,
-          createBy: undefined,
-          createTime: undefined,
-          updateBy: undefined,
-          updateTime: undefined,
-          stockValue: []
-        }
-        this.userOptions = []
-        this.stockOption = []
-        this.userAllotOptions = []
-        this.resetForm('form')
-      },
-      /** 搜索按钮操作 */
-      handleQuery() {
-        this.queryParams.pageNum = 1
-        this.getList()
-      },
-      /** 重置按钮操作 */
-      resetQuery() {
-        this.resetForm('queryForm')
-        this.handleQuery()
-      },
-      // 多选框选中数据
-      handleSelectionChange(selection) {
-        this.ids = selection.map(item => item.aId)
-        this.single = selection.length != 1
-        this.multiple = !selection.length
-      },
-      /** 新增按钮操作 */
-      handleAdd() {
-        this.reset()
-        this.open = true
-        this.title = '添加资产调拨'
-      },
-      /** 修改按钮操作 */
-      handleUpdate(row) {
-        this.reset()
-        const aId = row.aId || this.ids
-        getAllot(aId).then(response => {
-          this.form = response.data
-          let depOutId = this.form.depOutId
-          selectlist(depOutId).then(response => {
-            this.userOptions = response.data
-            this.outlistStock(depOutId, '', 0)
-
-          })
-          let depId = this.form.depId
-          selectlist(depId).then(response => {
-            this.userAllotOptions = response.data
-          })
-          this.form.leadOutUserId = this.form.leadOutUserId + ''
-          this.form.leadUserId = this.form.leadUserId + ''
-          this.open = true
-          this.title = '修改资产调拨'
-        })
-      },
-      checkData(datas, values) {
-        var objs = []
-        for (var i = 0; i < datas.length; i++) {
-          for (var j = 0; j < values.length; j++) {
-            if (datas[i].aId != ('' + values[j])) {
-              objs.push(j)
-            }
-          }
-        }
-        for (var i = 0; i < objs.length; i++) {
-          values.baoremove(i)
-        }
-      },
-      /** 提交按钮 */
-      submitForm: function() {
-        this.$refs['form'].validate(valid => {
-          if (valid) {
-            if (this.form.aId != undefined) {
-              updateAllot(this.form).then(response => {
-                if (response.code === 200) {
-                  this.msgSuccess('修改成功')
-                  this.open = false
-                  this.getList()
-                } else {
-                  this.msgError(response.msg)
-                }
-              })
-            } else {
-              addAllot(this.form).then(response => {
-                if (response.code === 200) {
-                  this.msgSuccess('新增成功')
-                  this.open = false
-                  this.getList()
-                } else {
-                  this.msgError(response.msg)
-                }
-              })
-            }
-          }
-        })
-      },
-      /** 删除按钮操作 */
-      handleDelete(row) {
-        const aIds = row.aId || this.ids
-        this.$confirm('是否确认删除资产调拨编号为"' + aIds + '"的数据项?', '警告', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          type: 'warning'
-        }).then(function() {
-          return delAllot(aIds)
-        }).then(() => {
-          this.getList()
-          this.msgSuccess('删除成功')
-        }).catch(function() {
-        })
-      },
-      /** 导出按钮操作 */
-      handleExport() {
-        const queryParams = this.queryParams
-        this.$confirm('是否确认导出所有资产调拨数据项?', '警告', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          type: 'warning'
-        }).then(function() {
-          return exportAllot(queryParams)
-        }).then(response => {
-          this.download(response.msg)
-        }).catch(function() {
-        })
-      },
-      // 获取当前选中部门的名称
-      selectDepart(val) {
-        this.form.leadOutUserId = undefined
-        selectlist(val.id).then(response => {
-          this.userOptions = response.data
-          this.outlistStock(val.id, '', 0)
-        })
-      },
-      changeSelect(value) {
-        this.outlistStock('', value, 0)
-      },
-      // 获取当前选中部门的名称
-      selectAllotDepart(val) {
-        selectlist(val.id).then(response => {
-          this.userAllotOptions = response.data
-        })
-      },
-      //获取资源数据
-      outlistStock(depId, userId, status) {
-        outlistStock(depId, userId, status).then(response => {
-          this.stockOption = response.data
-          console.log(this.stockOption)
-          this.checkData(this.stockOption, this.form.stockValue)
-        })
-      },
-      statusFormat(row, column) {
-        var restatus = ''
-        let obj = row.state
-        switch (obj) {
-          case 0:
-            restatus = '审核中'
-            break
-          case 1:
-            restatus = '不通过'
-            break
-          case 2:
-            restatus = '通过'
-            break
-          default:
-            restatus = '未提交审核'
-        }
-        return restatus
-      },
-      /**
-       * 提交审核*
-       * */
-      commit(row) {
-        getByKey('assets_stock_allot').then(response => {
-          this.instanceId = response.data.id
-          commit(row.aId, this.instanceId).then(response => {
-            this.msgSuccess('ok')
-            this.getList()
-          })
-        })
-      },
-      remoiit() {
-        this.$refs['form'].validate(valid => {
-          if (valid) {
-            recommit(this.form).then(response => {
-              if (response.code === 200) {
-                this.msgSuccess('修改成功')
-                this.open = false
-                this.getList()
-              } else {
-                this.msgError(response.msg)
-              }
-            })
-          }
-        })
-      },
-      /*
-     *显示流程表单
-     * */
-      showForms(index, row) {
-        this.hforms.open = false
-        this.hforms.open = true
-        this.hforms.title = '查看审核流程'
-        this.$nextTick(() => {
-          this.$refs.addEnterprise.showForms(row.instanceId)
-        })
-      },
-      showImage(index, row) {
-        let instanceId = row.instanceId
-        instanceId = process.env.VUE_APP_BASE_API + '/leaveNew/read-resource?processInstanceId=' + instanceId + '&t=' + Math.random()
-        this.activitiImg.open = true
-        this.activitiImg.src = instanceId
-      },
-      /** 再次提交审核*/
-      recommit(row) {
-        this.reset()
-        const aId = row.aId || this.ids
-        getAllot(aId).then(response => {
-          this.form = response.data
-          let depOutId = this.form.depOutId
-          selectlist(depOutId).then(response => {
-            this.userOptions = response.data
-            this.outlistStock(depOutId, '', 0)
-          })
-          let depId = this.form.depId
-          selectlist(depId).then(response => {
-            this.userAllotOptions = response.data
-          })
-          this.form.leadOutUserId = this.form.leadOutUserId + ''
-          this.form.leadUserId = this.form.leadUserId + ''
-          this.form.taskId = row.taskId
-          this.open = true
-          this.title = '修改资产调拨'
-        })
-      },
-      processDefinitionKey() {
-        getByKey('assets_stock_allot').then(response => {
-          this.instanceId = response.data.id
-          console.log(this.instanceId)
-        })
-      }
-    },
-    watch: {
-      'form.depOutId': function(newVal) {
-        console.log(newVal)
-        if (newVal == undefined) {
-          console.log(newVal)
-          this.form.stockValue = []
-          this.form.leadOutUserId = undefined
-          this.userOptions = []
-        }
-      },
-      'form.depId': function(newVal) {
-        console.log(newVal)
-        if (newVal == undefined) {
-          console.log(newVal)
-          this.form.leadUserId = undefined
-          this.userAllotOptions = []
-        }
-      }
-    }
-  }
-</script>
-<style rel="stylesheet/scss" lang="scss">
-  .demo-table-expand {
-    font-size: 0;
-  }
-
-  .demo-table-expand label {
-    width: 90px;
-    color: #99a9bf;
-  }
-
-  .demo-table-expand .el-form-item {
-    margin-right: 0;
-    margin-bottom: 0;
-    width: 50%;
-  }
-</style>
-

+ 0 - 367
src/views/assets/audit/index.vue

@@ -1,367 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
-      <el-form-item label="流程id" prop="instanceId">
-        <el-input
-          v-model="queryParams.instanceId"
-          placeholder="请输入流程id"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="任务 ID" prop="taskId">
-        <el-input
-          v-model="queryParams.taskId"
-          placeholder="请输入任务 ID"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="任务名称 (必须以表单页面名称一致)" prop="taskName">
-        <el-input
-          v-model="queryParams.taskName"
-          placeholder="请输入任务名称 (必须以表单页面名称一致)"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="是否同意 0不同意 1同意" prop="isStatus">
-        <el-select v-model="queryParams.isStatus" placeholder="请选择是否同意 0不同意 1同意" clearable size="small">
-          <el-option label="请选择字典生成" value=""/>
-        </el-select>
-      </el-form-item>
-      <el-form-item label="审核人 ID" prop="auditUserId">
-        <el-input
-          v-model="queryParams.auditUserId"
-          placeholder="请输入审核人 ID"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="审核人名称" prop="auditUser">
-        <el-input
-          v-model="queryParams.auditUser"
-          placeholder="请输入审核人名称"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="审核时间" prop="auditTime">
-        <el-date-picker clearable size="small" style="width: 200px"
-                        v-model="queryParams.auditTime"
-                        type="date"
-                        value-format="yyyy-MM-dd"
-                        placeholder="选择审核时间">
-        </el-date-picker>
-      </el-form-item>
-      <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
-      </el-form-item>
-    </el-form>
-
-    <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
-        <el-button
-          type="primary"
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-hasPermi="['assets:audit:add']"
-        >新增
-        </el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="success"
-          icon="el-icon-edit"
-          size="mini"
-          :disabled="single"
-          @click="handleUpdate"
-          v-hasPermi="['assets:audit:edit']"
-        >修改
-        </el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="danger"
-          icon="el-icon-delete"
-          size="mini"
-          :disabled="multiple"
-          @click="handleDelete"
-          v-hasPermi="['assets:audit:remove']"
-        >删除
-        </el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="warning"
-          icon="el-icon-download"
-          size="mini"
-          @click="handleExport"
-          v-hasPermi="['assets:audit:export']"
-        >导出
-        </el-button>
-      </el-col>
-    </el-row>
-
-    <el-table v-loading="loading" :data="auditList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center"/>
-      <el-table-column label="主键 ID" align="center" prop="id"/>
-      <el-table-column label="流程id" align="center" prop="instanceId"/>
-      <el-table-column label="任务 ID" align="center" prop="taskId"/>
-      <el-table-column label="任务名称 (必须以表单页面名称一致)" align="center" prop="taskName"/>
-      <el-table-column label="是否同意 0不同意 1同意" align="center" prop="isStatus"/>
-      <el-table-column label="审核人 ID" align="center" prop="auditUserId"/>
-      <el-table-column label="审核人名称" align="center" prop="auditUser"/>
-      <el-table-column label="审核时间" align="center" prop="auditTime" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.auditTime) }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="备注" align="center" prop="remark"/>
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
-        <template slot-scope="scope">
-          <el-button
-            type="success"
-            icon="el-icon-edit"
-            size="small"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['assets:audit:edit']"
-          >修改
-          </el-button>
-          <el-button
-            type="danger"
-            icon="el-icon-delete"
-            size="small"
-            @click="handleDelete(scope.row)"
-            v-hasPermi="['assets:audit:remove']"
-          >删除
-          </el-button>
-        </template>
-      </el-table-column>
-    </el-table>
-
-    <pagination
-      v-show="total>0"
-      :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
-      @pagination="getList"
-    />
-
-    <!-- 添加或修改审核对话框 -->
-    <el-dialog :close-on-click-modal="false" :title="title" :visible.sync="open" width="500px">
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-form-item label="流程id" prop="instanceId">
-          <el-input v-model="form.instanceId" placeholder="请输入流程id"/>
-        </el-form-item>
-        <el-form-item label="任务 ID" prop="taskId">
-          <el-input v-model="form.taskId" placeholder="请输入任务 ID"/>
-        </el-form-item>
-        <el-form-item label="任务名称 (必须以表单页面名称一致)" prop="taskName">
-          <el-input v-model="form.taskName" placeholder="请输入任务名称 (必须以表单页面名称一致)"/>
-        </el-form-item>
-        <el-form-item label="是否同意 0不同意 1同意">
-          <el-radio-group v-model="form.isStatus">
-            <el-radio label="1">请选择字典生成</el-radio>
-          </el-radio-group>
-        </el-form-item>
-        <el-form-item label="审核人 ID" prop="auditUserId">
-          <el-input v-model="form.auditUserId" placeholder="请输入审核人 ID"/>
-        </el-form-item>
-        <el-form-item label="审核人名称" prop="auditUser">
-          <el-input v-model="form.auditUser" placeholder="请输入审核人名称"/>
-        </el-form-item>
-        <el-form-item label="审核时间" prop="auditTime">
-          <el-date-picker clearable size="small" style="width: 200px"
-                          v-model="form.auditTime"
-                          type="date"
-                          value-format="yyyy-MM-dd"
-                          placeholder="选择审核时间">
-          </el-date-picker>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel">取 消</el-button>
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-  import { listAudit, getAudit, delAudit, addAudit, updateAudit, exportAudit } from '@/api/assets/audit'
-
-  export default {
-    name: 'Audit',
-    data() {
-      return {
-        // 遮罩层
-        loading: true,
-        // 选中数组
-        ids: [],
-        // 非单个禁用
-        single: true,
-        // 非多个禁用
-        multiple: true,
-        // 总条数
-        total: 0,
-        // 审核表格数据
-        auditList: [],
-        // 弹出层标题
-        title: '',
-        // 是否显示弹出层
-        open: false,
-        // 查询参数
-        queryParams: {
-          pageNum: 1,
-          pageSize: 10,
-          instanceId: undefined,
-          taskId: undefined,
-          taskName: undefined,
-          isStatus: undefined,
-          auditUserId: undefined,
-          auditUser: undefined,
-          auditTime: undefined
-        },
-        // 表单参数
-        form: {},
-        // 表单校验
-        rules: {}
-      }
-    },
-    created() {
-      this.getList()
-    },
-    methods: {
-      /** 查询审核列表 */
-      getList() {
-        this.loading = true
-        listAudit(this.queryParams).then(response => {
-          this.auditList = response.rows
-          this.total = response.total
-          this.loading = false
-        })
-      },
-      // 取消按钮
-      cancel() {
-        this.open = false
-        this.reset()
-      },
-      // 表单重置
-      reset() {
-        this.form = {
-          id: undefined,
-          instanceId: undefined,
-          taskId: undefined,
-          taskName: undefined,
-          isStatus: '0',
-          auditUserId: undefined,
-          auditUser: undefined,
-          auditTime: undefined,
-          remark: undefined,
-          createBy: undefined,
-          createTime: undefined,
-          updateBy: undefined,
-          updateTime: undefined
-        }
-        this.resetForm('form')
-      },
-      /** 搜索按钮操作 */
-      handleQuery() {
-        this.queryParams.pageNum = 1
-        this.getList()
-      },
-      /** 重置按钮操作 */
-      resetQuery() {
-        this.resetForm('queryForm')
-        this.handleQuery()
-      },
-      // 多选框选中数据
-      handleSelectionChange(selection) {
-        this.ids = selection.map(item => item.id)
-        this.single = selection.length != 1
-        this.multiple = !selection.length
-      },
-      /** 新增按钮操作 */
-      handleAdd() {
-        this.reset()
-        this.open = true
-        this.title = '添加审核'
-      },
-      /** 修改按钮操作 */
-      handleUpdate(row) {
-        this.reset()
-        const id = row.id || this.ids
-        getAudit(id).then(response => {
-          this.form = response.data
-          this.open = true
-          this.title = '修改审核'
-        })
-      },
-      /** 提交按钮 */
-      submitForm: function() {
-        this.$refs['form'].validate(valid => {
-          if (valid) {
-            if (this.form.id != undefined) {
-              updateAudit(this.form).then(response => {
-                if (response.code === 200) {
-                  this.msgSuccess('修改成功')
-                  this.open = false
-                  this.getList()
-                } else {
-                  this.msgError(response.msg)
-                }
-              })
-            } else {
-              addAudit(this.form).then(response => {
-                if (response.code === 200) {
-                  this.msgSuccess('新增成功')
-                  this.open = false
-                  this.getList()
-                } else {
-                  this.msgError(response.msg)
-                }
-              })
-            }
-          }
-        })
-      },
-      /** 删除按钮操作 */
-      handleDelete(row) {
-        const ids = row.id || this.ids
-        this.$confirm('是否确认删除审核编号为"' + ids + '"的数据项?', '警告', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          type: 'warning'
-        }).then(function() {
-          return delAudit(ids)
-        }).then(() => {
-          this.getList()
-          this.msgSuccess('删除成功')
-        }).catch(function() {
-        })
-      },
-      /** 导出按钮操作 */
-      handleExport() {
-        const queryParams = this.queryParams
-        this.$confirm('是否确认导出所有审核数据项?', '警告', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          type: 'warning'
-        }).then(function() {
-          return exportAudit(queryParams)
-        }).then(response => {
-          this.download(response.msg)
-        }).catch(function() {
-        })
-      }
-    }
-  }
-</script>

部分文件因文件數量過多而無法顯示