Sfoglia il codice sorgente

新增组织机构

Z 2 anni fa
parent
commit
86bdd2089b
38 ha cambiato i file con 1028 aggiunte e 434 eliminazioni
  1. 361 26
      package-lock.json
  2. 3 0
      qiankun_config/store.js
  3. 11 0
      src/api/login/index.js
  4. 75 0
      src/components/authSelection/index.vue
  5. 2 2
      src/main.js
  6. 12 1
      src/store/modules/user.js
  7. 1 1
      src/views/ledgerAssets/boat/components/boat-list.vue
  8. 9 1
      src/views/ledgerAssets/boat/components/boat-search.vue
  9. 1 1
      src/views/ledgerAssets/dryArea/components/dryArea-list.vue
  10. 13 4
      src/views/ledgerAssets/dryArea/components/dryArea-search.vue
  11. 1 1
      src/views/ledgerAssets/equipment/components/equipment-list.vue
  12. 9 1
      src/views/ledgerAssets/equipment/components/equipment-search.vue
  13. 1 1
      src/views/ledgerAssets/material/components/material-list.vue
  14. 8 1
      src/views/ledgerAssets/material/components/material-search.vue
  15. 1 1
      src/views/ledgerAssets/meter/components/equipment-list.vue
  16. 8 1
      src/views/ledgerAssets/meter/components/equipment-search.vue
  17. 1 1
      src/views/ledgerAssets/mould/components/mould-list.vue
  18. 103 90
      src/views/ledgerAssets/mould/components/mould-search.vue
  19. 1 1
      src/views/ledgerAssets/office/components/data-list.vue
  20. 8 1
      src/views/ledgerAssets/office/components/user-search.vue
  21. 1 1
      src/views/ledgerAssets/sparepart/components/sparepart-list.vue
  22. 8 1
      src/views/ledgerAssets/sparepart/components/sparepart-search.vue
  23. 2 2
      src/views/ledgerAssets/turnoverCar/components/turnovercar-list.vue
  24. 8 1
      src/views/ledgerAssets/turnoverCar/components/turnovercar-search.vue
  25. 1 1
      src/views/ledgerAssets/turnoverDisks/components/equipment-list.vue
  26. 8 1
      src/views/ledgerAssets/turnoverDisks/components/equipment-search.vue
  27. 1 0
      src/views/login/index.vue
  28. 23 18
      src/views/maintenance/delivery/plan/components/plan-search.vue
  29. 23 18
      src/views/maintenance/delivery/workOrder/components/work-search.vue
  30. 23 18
      src/views/maintenance/equipment/plan/components/plan-search.vue
  31. 24 18
      src/views/maintenance/patrol/plan/components/plan-search.vue
  32. 23 18
      src/views/maintenance/patrol/workOrder/components/work-search.vue
  33. 92 81
      src/views/maintenance/repair/outsourcingOrder/components/order-search.vue
  34. 24 18
      src/views/maintenance/repair/planRepair/components/maintenance-search.vue
  35. 8 2
      src/views/maintenance/repair/repairNotes/components/notes-search.vue
  36. 34 18
      src/views/maintenance/repair/workOrder/components/workorder-search.vue
  37. 89 81
      src/views/warning/warningMessage/components/message-search.vue
  38. 7 2
      src/views/warning/warningSetting/components/setting-search.vue

+ 361 - 26
package-lock.json

@@ -33,6 +33,7 @@
         "json-bigint": "^1.0.0",
         "nprogress": "^0.2.0",
         "print-js": "^1.6.0",
+        "qrcode": "^1.5.3",
         "tinymce": "^5.10.5",
         "vue": "^2.7.10",
         "vue-clipboard2": "^0.3.3",
@@ -3380,7 +3381,6 @@
       "version": "5.0.1",
       "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
       "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
-      "dev": true,
       "engines": {
         "node": ">=8"
       }
@@ -5437,6 +5437,14 @@
         }
       }
     },
+    "node_modules/decamelize": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz",
+      "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
     "node_modules/decode-named-character-reference": {
       "version": "1.0.2",
       "resolved": "https://registry.npmmirror.com/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz",
@@ -5716,6 +5724,11 @@
         "node": ">=0.3.1"
       }
     },
+    "node_modules/dijkstrajs": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmmirror.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz",
+      "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA=="
+    },
     "node_modules/dir-glob": {
       "version": "3.0.1",
       "resolved": "https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -5948,8 +5961,7 @@
     "node_modules/emoji-regex": {
       "version": "8.0.0",
       "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
-      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
-      "dev": true
+      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
     },
     "node_modules/emojis-list": {
       "version": "3.0.0",
@@ -7392,7 +7404,6 @@
       "version": "2.0.5",
       "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz",
       "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
-      "dev": true,
       "engines": {
         "node": "6.* || 8.* || >= 10.*"
       }
@@ -8621,7 +8632,6 @@
       "version": "3.0.0",
       "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
       "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
-      "dev": true,
       "engines": {
         "node": ">=8"
       }
@@ -11365,7 +11375,6 @@
       "version": "2.2.0",
       "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz",
       "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
-      "dev": true,
       "engines": {
         "node": ">=6"
       }
@@ -11463,7 +11472,6 @@
       "version": "4.0.0",
       "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz",
       "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
-      "dev": true,
       "engines": {
         "node": ">=8"
       }
@@ -11593,6 +11601,14 @@
         "node": ">=8"
       }
     },
+    "node_modules/pngjs": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmmirror.com/pngjs/-/pngjs-5.0.0.tgz",
+      "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==",
+      "engines": {
+        "node": ">=10.13.0"
+      }
+    },
     "node_modules/portfinder": {
       "version": "1.0.32",
       "resolved": "https://registry.npmmirror.com/portfinder/-/portfinder-1.0.32.tgz",
@@ -12520,6 +12536,169 @@
         "teleport": ">=0.2.0"
       }
     },
+    "node_modules/qrcode": {
+      "version": "1.5.4",
+      "resolved": "https://registry.npmmirror.com/qrcode/-/qrcode-1.5.4.tgz",
+      "integrity": "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==",
+      "dependencies": {
+        "dijkstrajs": "^1.0.1",
+        "pngjs": "^5.0.0",
+        "yargs": "^15.3.1"
+      },
+      "bin": {
+        "qrcode": "bin/qrcode"
+      },
+      "engines": {
+        "node": ">=10.13.0"
+      }
+    },
+    "node_modules/qrcode/node_modules/ansi-styles": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
+      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+      "dependencies": {
+        "color-convert": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+      }
+    },
+    "node_modules/qrcode/node_modules/camelcase": {
+      "version": "5.3.1",
+      "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz",
+      "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/qrcode/node_modules/cliui": {
+      "version": "6.0.0",
+      "resolved": "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz",
+      "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
+      "dependencies": {
+        "string-width": "^4.2.0",
+        "strip-ansi": "^6.0.0",
+        "wrap-ansi": "^6.2.0"
+      }
+    },
+    "node_modules/qrcode/node_modules/color-convert": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
+      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+      "dependencies": {
+        "color-name": "~1.1.4"
+      },
+      "engines": {
+        "node": ">=7.0.0"
+      }
+    },
+    "node_modules/qrcode/node_modules/color-name": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
+      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
+    },
+    "node_modules/qrcode/node_modules/find-up": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz",
+      "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+      "dependencies": {
+        "locate-path": "^5.0.0",
+        "path-exists": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/qrcode/node_modules/locate-path": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz",
+      "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+      "dependencies": {
+        "p-locate": "^4.1.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/qrcode/node_modules/p-limit": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz",
+      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+      "dependencies": {
+        "p-try": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=6"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/qrcode/node_modules/p-locate": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz",
+      "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+      "dependencies": {
+        "p-limit": "^2.2.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/qrcode/node_modules/wrap-ansi": {
+      "version": "6.2.0",
+      "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+      "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+      "dependencies": {
+        "ansi-styles": "^4.0.0",
+        "string-width": "^4.1.0",
+        "strip-ansi": "^6.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/qrcode/node_modules/y18n": {
+      "version": "4.0.3",
+      "resolved": "https://registry.npmmirror.com/y18n/-/y18n-4.0.3.tgz",
+      "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
+    },
+    "node_modules/qrcode/node_modules/yargs": {
+      "version": "15.4.1",
+      "resolved": "https://registry.npmmirror.com/yargs/-/yargs-15.4.1.tgz",
+      "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
+      "dependencies": {
+        "cliui": "^6.0.0",
+        "decamelize": "^1.2.0",
+        "find-up": "^4.1.0",
+        "get-caller-file": "^2.0.1",
+        "require-directory": "^2.1.1",
+        "require-main-filename": "^2.0.0",
+        "set-blocking": "^2.0.0",
+        "string-width": "^4.2.0",
+        "which-module": "^2.0.0",
+        "y18n": "^4.0.0",
+        "yargs-parser": "^18.1.2"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/qrcode/node_modules/yargs-parser": {
+      "version": "18.1.3",
+      "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-18.1.3.tgz",
+      "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
+      "dependencies": {
+        "camelcase": "^5.0.0",
+        "decamelize": "^1.2.0"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
     "node_modules/qs": {
       "version": "6.10.3",
       "resolved": "https://registry.npmmirror.com/qs/-/qs-6.10.3.tgz",
@@ -13018,7 +13197,6 @@
       "version": "2.1.1",
       "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz",
       "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
-      "dev": true,
       "engines": {
         "node": ">=0.10.0"
       }
@@ -13032,6 +13210,11 @@
         "node": ">=0.10.0"
       }
     },
+    "node_modules/require-main-filename": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz",
+      "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
+    },
     "node_modules/requires-port": {
       "version": "1.0.0",
       "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz",
@@ -13541,6 +13724,11 @@
         "node": ">= 0.8.0"
       }
     },
+    "node_modules/set-blocking": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz",
+      "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
+    },
     "node_modules/set-value": {
       "version": "2.0.1",
       "resolved": "https://registry.npmmirror.com/set-value/-/set-value-2.0.1.tgz",
@@ -14038,7 +14226,6 @@
       "version": "4.2.3",
       "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
       "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
-      "dev": true,
       "dependencies": {
         "emoji-regex": "^8.0.0",
         "is-fullwidth-code-point": "^3.0.0",
@@ -14110,7 +14297,6 @@
       "version": "6.0.1",
       "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
       "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
-      "dev": true,
       "dependencies": {
         "ansi-regex": "^5.0.1"
       },
@@ -16420,6 +16606,11 @@
         "url": "https://github.com/sponsors/ljharb"
       }
     },
+    "node_modules/which-module": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmmirror.com/which-module/-/which-module-2.0.1.tgz",
+      "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ=="
+    },
     "node_modules/which-typed-array": {
       "version": "1.1.9",
       "resolved": "https://registry.npmmirror.com/which-typed-array/-/which-typed-array-1.1.9.tgz",
@@ -19363,8 +19554,7 @@
     "ansi-regex": {
       "version": "5.0.1",
       "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
-      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
-      "dev": true
+      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
     },
     "ansi-styles": {
       "version": "3.2.1",
@@ -20901,6 +21091,11 @@
         "ms": "2.1.2"
       }
     },
+    "decamelize": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz",
+      "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA=="
+    },
     "decode-named-character-reference": {
       "version": "1.0.2",
       "resolved": "https://registry.npmmirror.com/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz",
@@ -21108,6 +21303,11 @@
       "resolved": "https://registry.npmmirror.com/diff/-/diff-5.2.0.tgz",
       "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A=="
     },
+    "dijkstrajs": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmmirror.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz",
+      "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA=="
+    },
     "dir-glob": {
       "version": "3.0.1",
       "resolved": "https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -21299,8 +21499,7 @@
     "emoji-regex": {
       "version": "8.0.0",
       "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
-      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
-      "dev": true
+      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
     },
     "emojis-list": {
       "version": "3.0.0",
@@ -22406,8 +22605,7 @@
     "get-caller-file": {
       "version": "2.0.5",
       "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz",
-      "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
-      "dev": true
+      "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
     },
     "get-intrinsic": {
       "version": "1.1.2",
@@ -23307,8 +23505,7 @@
     "is-fullwidth-code-point": {
       "version": "3.0.0",
       "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
-      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
-      "dev": true
+      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
     },
     "is-glob": {
       "version": "4.0.3",
@@ -25234,8 +25431,7 @@
     "p-try": {
       "version": "2.2.0",
       "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz",
-      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
-      "dev": true
+      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
     },
     "param-case": {
       "version": "3.0.4",
@@ -25316,8 +25512,7 @@
     "path-exists": {
       "version": "4.0.0",
       "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz",
-      "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
-      "dev": true
+      "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
     },
     "path-intersection": {
       "version": "2.2.1",
@@ -25413,6 +25608,11 @@
         }
       }
     },
+    "pngjs": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmmirror.com/pngjs/-/pngjs-5.0.0.tgz",
+      "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw=="
+    },
     "portfinder": {
       "version": "1.0.32",
       "resolved": "https://registry.npmmirror.com/portfinder/-/portfinder-1.0.32.tgz",
@@ -26062,6 +26262,129 @@
       "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==",
       "dev": true
     },
+    "qrcode": {
+      "version": "1.5.4",
+      "resolved": "https://registry.npmmirror.com/qrcode/-/qrcode-1.5.4.tgz",
+      "integrity": "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==",
+      "requires": {
+        "dijkstrajs": "^1.0.1",
+        "pngjs": "^5.0.0",
+        "yargs": "^15.3.1"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "camelcase": {
+          "version": "5.3.1",
+          "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz",
+          "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
+        },
+        "cliui": {
+          "version": "6.0.0",
+          "resolved": "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz",
+          "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
+          "requires": {
+            "string-width": "^4.2.0",
+            "strip-ansi": "^6.0.0",
+            "wrap-ansi": "^6.2.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
+        },
+        "find-up": {
+          "version": "4.1.0",
+          "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz",
+          "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+          "requires": {
+            "locate-path": "^5.0.0",
+            "path-exists": "^4.0.0"
+          }
+        },
+        "locate-path": {
+          "version": "5.0.0",
+          "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz",
+          "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+          "requires": {
+            "p-locate": "^4.1.0"
+          }
+        },
+        "p-limit": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz",
+          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+          "requires": {
+            "p-try": "^2.0.0"
+          }
+        },
+        "p-locate": {
+          "version": "4.1.0",
+          "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz",
+          "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+          "requires": {
+            "p-limit": "^2.2.0"
+          }
+        },
+        "wrap-ansi": {
+          "version": "6.2.0",
+          "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+          "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+          "requires": {
+            "ansi-styles": "^4.0.0",
+            "string-width": "^4.1.0",
+            "strip-ansi": "^6.0.0"
+          }
+        },
+        "y18n": {
+          "version": "4.0.3",
+          "resolved": "https://registry.npmmirror.com/y18n/-/y18n-4.0.3.tgz",
+          "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
+        },
+        "yargs": {
+          "version": "15.4.1",
+          "resolved": "https://registry.npmmirror.com/yargs/-/yargs-15.4.1.tgz",
+          "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
+          "requires": {
+            "cliui": "^6.0.0",
+            "decamelize": "^1.2.0",
+            "find-up": "^4.1.0",
+            "get-caller-file": "^2.0.1",
+            "require-directory": "^2.1.1",
+            "require-main-filename": "^2.0.0",
+            "set-blocking": "^2.0.0",
+            "string-width": "^4.2.0",
+            "which-module": "^2.0.0",
+            "y18n": "^4.0.0",
+            "yargs-parser": "^18.1.2"
+          }
+        },
+        "yargs-parser": {
+          "version": "18.1.3",
+          "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-18.1.3.tgz",
+          "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
+          "requires": {
+            "camelcase": "^5.0.0",
+            "decamelize": "^1.2.0"
+          }
+        }
+      }
+    },
     "qs": {
       "version": "6.10.3",
       "resolved": "https://registry.npmmirror.com/qs/-/qs-6.10.3.tgz",
@@ -26432,8 +26755,7 @@
     "require-directory": {
       "version": "2.1.1",
       "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz",
-      "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
-      "dev": true
+      "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q=="
     },
     "require-from-string": {
       "version": "2.0.2",
@@ -26441,6 +26763,11 @@
       "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
       "dev": true
     },
+    "require-main-filename": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz",
+      "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
+    },
     "requires-port": {
       "version": "1.0.0",
       "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz",
@@ -26833,6 +27160,11 @@
         "send": "0.18.0"
       }
     },
+    "set-blocking": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz",
+      "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
+    },
     "set-value": {
       "version": "2.0.1",
       "resolved": "https://registry.npmmirror.com/set-value/-/set-value-2.0.1.tgz",
@@ -27243,7 +27575,6 @@
       "version": "4.2.3",
       "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
       "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
-      "dev": true,
       "requires": {
         "emoji-regex": "^8.0.0",
         "is-fullwidth-code-point": "^3.0.0",
@@ -27296,7 +27627,6 @@
       "version": "6.0.1",
       "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
       "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
-      "dev": true,
       "requires": {
         "ansi-regex": "^5.0.1"
       }
@@ -29040,6 +29370,11 @@
         "is-symbol": "^1.0.3"
       }
     },
+    "which-module": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmmirror.com/which-module/-/which-module-2.0.1.tgz",
+      "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ=="
+    },
     "which-typed-array": {
       "version": "1.1.9",
       "resolved": "https://registry.npmmirror.com/which-typed-array/-/which-typed-array-1.1.9.tgz",

+ 3 - 0
qiankun_config/store.js

@@ -18,4 +18,7 @@ export default function (state) {
   if (state.user?.info) {
     store.commit('user/setUserInfo', state.user.info);
   }
+  if (state.user?.authorityDept) {
+    store.dispatch('user/getCurrentUserAuthorityDept');
+  }
 }

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

@@ -23,3 +23,14 @@ export async function getCaptcha() {
   }
   return Promise.reject(new Error(res.data.message));
 }
+/**
+ * 获取当前登陆用户数据权限部门数据
+ * @param
+ */
+export async function getCurrentUserAuthorityDeptAPI () {
+  const res = await request.post('/main/user/getCurrentUserAuthorityDepts');
+  if (res.data.code == 0) {
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}

+ 75 - 0
src/components/authSelection/index.vue

@@ -0,0 +1,75 @@
+<template>
+  <div>
+    <ele-tree-select
+      clearable
+      :data="deptTreeList"
+      v-model="selectVal"
+      valueKey="id"
+      labelKey="name"
+      :show-checkbox="true"
+      :check-strictly="true"
+      multiple
+      collapseTags
+      filterable
+      placeholder="请选择"
+      default-expand-all
+    />
+  </div>
+</template>
+<script>
+  import { mapGetters } from 'vuex';
+
+  export default {
+    name: 'index',
+    model: {
+      prop: 'value',
+      event: 'updateVal'
+    },
+    props: {
+      value: {
+        type: [String, Array],
+        default: ''
+      },
+      dataType: {
+        type: String,
+        default: 'String'
+      }
+    },
+    data() {
+      return {
+        deptTreeList: []
+      };
+    },
+    computed: {
+      ...mapGetters(['user']),
+      selectVal: {
+        set(val) {
+          switch (this.dataType) {
+            case 'Array':
+              this.$emit('updateVal', val);
+              break;
+            default:
+              this.$emit('updateVal', val.join(','));
+          }
+        },
+        get() {
+          switch (this.dataType) {
+            case 'Array':
+              return this.value || [];
+            default:
+              return this.value ? this.value.split(',') : [];
+          }
+        }
+      }
+    },
+    mounted() {
+      this.deptTreeList = this.$util.toTreeData({
+        data: this.user?.authorityDept?.groupList || [],
+        idField: 'id',
+        parentIdField: 'parentId'
+      });
+    }
+  };
+</script>
+
+<style scoped lang="scss"></style>

+ 2 - 2
src/main.js

@@ -11,10 +11,10 @@ import i18n from './i18n';
 import './styles/index.scss';
 import DictSelection from '@/components/Dict/DictSelection';
 import initParentStore from '../qiankun_config/store';
-
+import authSelection from '@/components/authSelection';
 import HeaderTitle from '@/components/header-title';
 Vue.component('HeaderTitle', HeaderTitle);
-
+Vue.component('authSelection', authSelection);
 // bpmnProcessDesigner 需要引入
 import MyPD from '@/components/bpmnProcessDesigner/package/index.js';
 Vue.use(MyPD);

+ 12 - 1
src/store/modules/user.js

@@ -4,6 +4,7 @@
 import { formatMenus, toTreeData, formatTreeData } from 'ele-admin';
 import { USER_MENUS } from '@/config/setting';
 import { getResourcesTree } from '@/api/layout';
+import {getCurrentUserAuthorityDeptAPI} from "@/api/login";
 
 const formatRouter = (list) => {
   let menuList = []; // menuType
@@ -45,7 +46,9 @@ export default {
     // 当前登录用户的权限路由
     authoritiesRouter: [],
     // 当前登录用户的角色
-    roles: []
+    roles: [],
+    // 当前登录用户的数据权限部门数据
+    authorityDept: {}
   },
   mutations: {
     // 设置登录用户的信息
@@ -68,9 +71,17 @@ export default {
     // 设置登录用户的角色
     setRoles(state, roles) {
       state.roles = roles;
+    },
+    // 当前登录用户的数据权限部门数据
+    setAuthorityDept(state, info) {
+      state.authorityDept = info;
     }
   },
   actions: {
+    async getCurrentUserAuthorityDept({ commit }) {
+      const info = await getCurrentUserAuthorityDeptAPI();
+      commit('setAuthorityDept', info);
+    },
     /**
      * 请求用户信息、权限、角色、菜单
      */

+ 1 - 1
src/views/ledgerAssets/boat/components/boat-list.vue

@@ -6,7 +6,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 9 - 1
src/views/ledgerAssets/boat/components/boat-search.vue

@@ -97,6 +97,14 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +120,7 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置</el-button
           >
         </div>
       </el-col>

+ 1 - 1
src/views/ledgerAssets/dryArea/components/dryArea-list.vue

@@ -6,7 +6,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 265px)"
+      height="calc(100vh - 375px)"
       full-height="calc(100vh - 116px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 13 - 4
src/views/ledgerAssets/dryArea/components/dryArea-search.vue

@@ -1,7 +1,7 @@
 <!-- 搜索表单 -->
 <template>
   <el-form
-    label-width="50px"
+    label-width="80px"
     class="ele-form-search"
     @keyup.enter.native="search"
     @submit.native.prevent
@@ -24,6 +24,14 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+
+    </el-row>
+    <el-row :gutter="15">
+      <el-col style="display: flex;justify-content: flex-end" v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <el-form-item label-width="50px">
           <el-button
             type="primary"
@@ -35,9 +43,9 @@
             查询
           </el-button>
           <el-button @click="reset"
-            icon="el-icon-refresh-left"
-            size="small"
-            type="primary"
+                     icon="el-icon-refresh-left"
+                     size="small"
+                     type="primary"
           >重置</el-button>
         </el-form-item>
       </el-col>
@@ -47,6 +55,7 @@
 
 <script>
   export default {
+    components: {},
     data() {
       // 默认表单数据
       const defaultWhere = {

+ 1 - 1
src/views/ledgerAssets/equipment/components/equipment-list.vue

@@ -10,7 +10,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 9 - 1
src/views/ledgerAssets/equipment/components/equipment-search.vue

@@ -97,6 +97,14 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +120,7 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置</el-button
           >
         </div>
       </el-col>

+ 1 - 1
src/views/ledgerAssets/material/components/material-list.vue

@@ -11,7 +11,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 8 - 1
src/views/ledgerAssets/material/components/material-search.vue

@@ -97,6 +97,13 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +119,7 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置</el-button
           >
         </div>
       </el-col>

+ 1 - 1
src/views/ledgerAssets/meter/components/equipment-list.vue

@@ -10,7 +10,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 8 - 1
src/views/ledgerAssets/meter/components/equipment-search.vue

@@ -97,6 +97,13 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +119,7 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置</el-button
           >
         </div>
       </el-col>

+ 1 - 1
src/views/ledgerAssets/mould/components/mould-list.vue

@@ -11,7 +11,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 103 - 90
src/views/ledgerAssets/mould/components/mould-search.vue

@@ -9,22 +9,22 @@
     <el-row type="flex" :gutter="15">
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
         <el-form-item label="编码:" label-width="100px">
-          <el-input clearable v-model="where.code" placeholder="请输入" />
+          <el-input clearable v-model="where.code" placeholder="请输入"/>
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
         <el-form-item label="名称:" label-width="100px">
-          <el-input clearable v-model="where.name" placeholder="请输入" />
+          <el-input clearable v-model="where.name" placeholder="请输入"/>
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
         <el-form-item label="固资编码:" label-width="100px">
-          <el-input clearable v-model="where.fixCode" placeholder="请输入" />
+          <el-input clearable v-model="where.fixCode" placeholder="请输入"/>
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
         <el-form-item label="使用岗位:" label-width="100px">
-          <DeptSelect v-model="where.usePostId" @input="selectChange" />
+          <DeptSelect v-model="where.usePostId" @input="selectChange"/>
         </el-form-item>
       </el-col>
     </el-row>
@@ -32,12 +32,12 @@
     <el-row type="flex" :gutter="15">
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
         <el-form-item label="型号:" label-width="100px">
-          <el-input clearable v-model="where.module" placeholder="请输入" />
+          <el-input clearable v-model="where.module" placeholder="请输入"/>
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
         <el-form-item label="编号:" label-width="100px">
-          <el-input clearable v-model="where.codeNumber" placeholder="请输入" />
+          <el-input clearable v-model="where.codeNumber" placeholder="请输入"/>
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
@@ -97,6 +97,14 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +120,8 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置
+          </el-button
           >
         </div>
       </el-col>
@@ -122,10 +131,10 @@
         <div class="ele-status">
           <el-checkbox v-model="consumption">显示已消耗</el-checkbox>
           <span class="op"
-            >在线:<span>{{ networkCounts.online }}</span></span
+          >在线:<span>{{ networkCounts.online }}</span></span
           >
           <span class="op"
-            >离线:<span>{{ networkCounts.offline }}</span></span
+          >离线:<span>{{ networkCounts.offline }}</span></span
           >
         </div>
       </el-col>
@@ -134,95 +143,99 @@
 </template>
 
 <script>
-  import { getByCode } from '@/api/system/dictionary-data';
-  import { businessStatus } from '@/utils/dict/warehouse';
-  import DeptSelect from '@/components/CommomSelect/dept-select.vue';
-  export default {
-    props: ['networkCounts'],
-    data() {
-      // 默认表单数据
-      const defaultWhere = {
-        name: '',
-        code: '',
-        endTime: '',
-        networkStatus: '',
-        status: '',
-        fixCode: '',
-        runStatus: '',
-        module: '',
-        space: '',
-        usePostId: ''
-      };
-      return {
-        assetLevel: [],
-        businessStatus,
-        // 表单数据
-        where: { ...defaultWhere },
-        consumption: false
-      };
-    },
-    components: {
-      DeptSelect
+import {getByCode} from '@/api/system/dictionary-data';
+import {businessStatus} from '@/utils/dict/warehouse';
+import DeptSelect from '@/components/CommomSelect/dept-select.vue';
+
+export default {
+  props: ['networkCounts'],
+  data() {
+    // 默认表单数据
+    const defaultWhere = {
+      name: '',
+      code: '',
+      endTime: '',
+      networkStatus: '',
+      status: '',
+      fixCode: '',
+      runStatus: '',
+      module: '',
+      space: '',
+      usePostId: ''
+    };
+    return {
+      assetLevel: [],
+      businessStatus,
+      // 表单数据
+      where: {...defaultWhere},
+      consumption: false
+    };
+  },
+  components: {
+    DeptSelect
+  },
+  computed: {
+    // 是否开启响应式布局
+    styleResponsive() {
+      return this.$store.state.theme.styleResponsive;
+    }
+  },
+  created() {
+    this.getAssetLevelOptions();
+  },
+  methods: {
+    // 获取资产级别下拉
+    async getAssetLevelOptions() {
+      let {data} = await getByCode('asset_level');
+      this.assetLevel =
+        data.length > 0
+          ? data.map((item) => {
+            return {
+              name: Object.keys(item)[0],
+              id: item[Object.keys(item)[0]]
+            };
+          })
+          : [];
     },
-    computed: {
-      // 是否开启响应式布局
-      styleResponsive() {
-        return this.$store.state.theme.styleResponsive;
+    /* 清空 */
+    selectChange(value) {
+      if (!value) {
+        this.where.usePostId = '';
       }
     },
-    created() {
-      this.getAssetLevelOptions();
-    },
-    methods: {
-      // 获取资产级别下拉
-      async getAssetLevelOptions() {
-        let { data } = await getByCode('asset_level');
-        this.assetLevel =
-          data.length > 0
-            ? data.map((item) => {
-                return {
-                  name: Object.keys(item)[0],
-                  id: item[Object.keys(item)[0]]
-                };
-              })
-            : [];
-      },
-      /* 清空 */
-      selectChange(value) {
-        if (!value) {
-          this.where.usePostId = '';
-        }
-      },
-      /* 搜索 */
-      search() {
-        if (!this.where.endTime) {
-          this.where.endTime = '';
-        }
-        this.$emit('search', this.where);
-      },
-      /*  重置 */
-      reset() {
-        this.where = { ...this.defaultWhere };
-        this.search();
+    /* 搜索 */
+    search() {
+      if (!this.where.endTime) {
+        this.where.endTime = '';
       }
+      this.$emit('search', this.where);
+    },
+    /*  重置 */
+    reset() {
+      this.where = {...this.defaultWhere};
+      this.search();
     }
-  };
+  }
+};
 </script>
 
 <style lang="scss" scoped>
-  .ele-form-actions {
-    text-align: right;
-  }
-  .ele-status {
-    display: flex;
-    align-content: center;
-    justify-content: flex-end;
-    padding: 0 10px 10px 10px;
-    .op {
-      margin-left: 20px;
-      span {
-        color: #0000ff;
-      }
+.ele-form-actions {
+  text-align: right;
+}
+
+.ele-status {
+  display: flex;
+  align-content: center;
+  justify-content: flex-end;
+  padding: 0 10px 10px 10px;
+
+  .op {
+    margin-left: 20px;
+
+    span {
+      color: #0000ff;
     }
   }
+}
 </style>

+ 1 - 1
src/views/ledgerAssets/office/components/data-list.vue

@@ -11,7 +11,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 8 - 1
src/views/ledgerAssets/office/components/user-search.vue

@@ -97,6 +97,13 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +119,7 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置</el-button
           >
         </div>
       </el-col>

+ 1 - 1
src/views/ledgerAssets/sparepart/components/sparepart-list.vue

@@ -11,7 +11,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 8 - 1
src/views/ledgerAssets/sparepart/components/sparepart-search.vue

@@ -97,6 +97,13 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +119,7 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置</el-button
           >
         </div>
       </el-col>

+ 2 - 2
src/views/ledgerAssets/turnoverCar/components/turnovercar-list.vue

@@ -4,14 +4,14 @@
       ref="searchRef"
       @search="reload"
       :networkCounts="networkCounts"
-    />
+    >
     </turnovercar-search>
     <!-- 数据表格 -->
     <ele-pro-table
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 8 - 1
src/views/ledgerAssets/turnoverCar/components/turnovercar-search.vue

@@ -97,6 +97,13 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +119,7 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置</el-button
           >
         </div>
       </el-col>

+ 1 - 1
src/views/ledgerAssets/turnoverDisks/components/equipment-list.vue

@@ -10,7 +10,7 @@
       ref="table"
       :columns="columns"
       :datasource="datasource"
-      height="calc(100vh - 440px)"
+      height="calc(100vh - 500px)"
       full-height="calc(100vh - 115px)"
       tool-class="ele-toolbar-form"
       cache-key="systemOrgUserTable"

+ 8 - 1
src/views/ledgerAssets/turnoverDisks/components/equipment-search.vue

@@ -97,6 +97,13 @@
         </el-form-item>
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row type="flex" :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <div class="ele-form-actions">
           <el-button
             type="primary"
@@ -112,7 +119,7 @@
             icon="el-icon-refresh-left"
             size="small"
             type="primary"
-            >重置</el-button
+          >重置</el-button
           >
         </div>
       </el-col>

+ 1 - 0
src/views/login/index.vue

@@ -179,6 +179,7 @@
               this.$store.commit('user/setUserInfo', res.data);
               this.loading = false;
               this.$message.success(res.message);
+              this.$store.dispatch('user/getCurrentUserAuthorityDept');
               this.goHome();
             })
             .catch((e) => {

+ 23 - 18
src/views/maintenance/delivery/plan/components/plan-search.vue

@@ -67,24 +67,29 @@
             <el-option label="已驳回" :value="4"></el-option>
           </el-select>
         </el-form-item>
-        <div class="ele-form-actions">
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            class="ele-btn-icon"
-            @click="search"
-            size="small"
-          >
-            查询
-          </el-button>
-          <el-button
-            @click="reset"
-            icon="el-icon-refresh-left"
-            size="small"
-            type="primary"
-            >重置</el-button
-          >
-        </div>
+        <el-form-item label="组织机构:">
+          <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row :gutter="15">
+      <el-col class="ele-form-actions">
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+          size="small"
+        >
+          查询
+        </el-button>
+        <el-button
+          @click="reset"
+          icon="el-icon-refresh-left"
+          size="small"
+          type="primary"
+        >重置</el-button
+        >
       </el-col>
     </el-row>
   </el-form>

+ 23 - 18
src/views/maintenance/delivery/workOrder/components/work-search.vue

@@ -72,24 +72,29 @@
         <!-- <el-form-item label="规则名称:">
           <el-input clearable v-model="where.name" placeholder="请输入" />
         </el-form-item> -->
-        <div class="ele-form-actions">
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            class="ele-btn-icon"
-            @click="search"
-            size="small"
-          >
-            查询
-          </el-button>
-          <el-button
-            @click="reset"
-            icon="el-icon-refresh-left"
-            size="small"
-            type="primary"
-            >重置</el-button
-          >
-        </div>
+        <el-form-item label="组织机构:">
+          <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row :gutter="15">
+      <el-col class="ele-form-actions">
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+          size="small"
+        >
+          查询
+        </el-button>
+        <el-button
+          @click="reset"
+          icon="el-icon-refresh-left"
+          size="small"
+          type="primary"
+        >重置</el-button
+        >
       </el-col>
     </el-row>
   </el-form>

+ 23 - 18
src/views/maintenance/equipment/plan/components/plan-search.vue

@@ -67,24 +67,29 @@
             <el-option label="已驳回" :value="4"></el-option>
           </el-select>
         </el-form-item>
-        <div class="ele-form-actions">
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            class="ele-btn-icon"
-            @click="search"
-            size="small"
-          >
-            查询
-          </el-button>
-          <el-button
-            @click="reset"
-            icon="el-icon-refresh-left"
-            size="small"
-            type="primary"
-            >重置</el-button
-          >
-        </div>
+        <el-form-item label="组织机构:">
+          <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row :gutter="15">
+      <el-col class="ele-form-actions">
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+          size="small"
+        >
+          查询
+        </el-button>
+        <el-button
+          @click="reset"
+          icon="el-icon-refresh-left"
+          size="small"
+          type="primary"
+        >重置</el-button
+        >
       </el-col>
     </el-row>
   </el-form>

+ 24 - 18
src/views/maintenance/patrol/plan/components/plan-search.vue

@@ -67,24 +67,30 @@
             <el-option label="已驳回" :value="4"></el-option>
           </el-select>
         </el-form-item>
-        <div class="ele-form-actions">
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            class="ele-btn-icon"
-            @click="search"
-            size="small"
-          >
-            查询
-          </el-button>
-          <el-button
-            @click="reset"
-            icon="el-icon-refresh-left"
-            size="small"
-            type="primary"
-            >重置</el-button
-          >
-        </div>
+        <el-form-item label="组织机构:">
+          <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+
+      </el-col>
+    </el-row>
+    <el-row :gutter="15">
+      <el-col class="ele-form-actions">
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+          size="small"
+        >
+          查询
+        </el-button>
+        <el-button
+          @click="reset"
+          icon="el-icon-refresh-left"
+          size="small"
+          type="primary"
+        >重置</el-button
+        >
       </el-col>
     </el-row>
   </el-form>

+ 23 - 18
src/views/maintenance/patrol/workOrder/components/work-search.vue

@@ -69,24 +69,29 @@
         <!-- <el-form-item label="规则名称:">
           <el-input clearable v-model="where.name" placeholder="请输入" />
         </el-form-item> -->
-        <div class="ele-form-actions">
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            class="ele-btn-icon"
-            @click="search"
-            size="small"
-          >
-            查询
-          </el-button>
-          <el-button
-            @click="reset"
-            icon="el-icon-refresh-left"
-            size="small"
-            type="primary"
-            >重置</el-button
-          >
-        </div>
+        <el-form-item label="组织机构:">
+          <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+    </el-row>
+    <el-row :gutter="15">
+      <el-col class="ele-form-actions">
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+          size="small"
+        >
+          查询
+        </el-button>
+        <el-button
+          @click="reset"
+          icon="el-icon-refresh-left"
+          size="small"
+          type="primary"
+        >重置</el-button
+        >
       </el-col>
     </el-row>
   </el-form>

+ 92 - 81
src/views/maintenance/repair/outsourcingOrder/components/order-search.vue

@@ -1,18 +1,18 @@
 <!-- 搜索表单 -->
 <template>
   <el-form
-    label-width="50px"
+    label-width="80px"
     class="ele-form-search"
     @keyup.enter.native="search"
     @submit.native.prevent
   >
     <el-row :gutter="15">
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
-        <el-form-item label="工单编号:"  label-width="80px">
-          <el-input clearable v-model="where.code" placeholder="请输入" />
+        <el-form-item label="工单编号:" label-width="80px">
+          <el-input clearable v-model="where.code" placeholder="请输入"/>
         </el-form-item>
       </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 5 }">
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 5 }">
         <el-form-item label="状态:">
           <DictSelection dictName="委外单状态" clearable v-model="where.status">
           </DictSelection>
@@ -20,93 +20,104 @@
       </el-col>
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
         <el-form-item label="执行人:" label-width="60px">
-			 <personSelect v-model="where.userNo" />
+          <personSelect v-model="where.userNo"/>
         </el-form-item>
       </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 7, md: 12 } : { span: 7 }">
-		 <el-form-item label="发布时间:"  label-width="80px">
-			<el-date-picker
-				v-model="where.time"
-				type="daterange"
-				range-separator="至"
-				start-placeholder="开始日期"
-				end-placeholder="结束日期"
-				value-format="yyyy-MM-dd HH:mm:ss"
-				:default-time="['00:00:00', '23:59:59']"
-				style="width: 100%;"
-			>
-			</el-date-picker>
-		 </el-form-item>
-		<div class="ele-form-actions">
-			<el-button
-				type="primary"
-				icon="el-icon-search"
-				class="ele-btn-icon"
-				@click="search"
-				size="small"
-			>
-				查询
-			</el-button>
-			 <el-button @click="reset"
-				 icon="el-icon-refresh-left"
-				 size="small"
-				 type="primary"
-			 >重置</el-button>
-		</div>
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 7 }">
+        <el-form-item label="发布时间:" label-width="80px">
+          <el-date-picker
+            v-model="where.time"
+            type="daterange"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            value-format="yyyy-MM-dd HH:mm:ss"
+            :default-time="['00:00:00', '23:59:59']"
+            style="width: 100%;"
+          >
+          </el-date-picker>
+        </el-form-item>
       </el-col>
+
+
     </el-row>
+    <el-row :gutter="15">
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+      <el-col style="display: flex;justify-content: flex-end" v-bind="styleResponsive ? { lg: 18, md: 18 } : { span: 18 }">
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+          size="small"
+        >
+          查询
+        </el-button>
+        <el-button @click="reset"
+                   icon="el-icon-refresh-left"
+                   size="small"
+                   type="primary"
+        >重置</el-button>
+      </el-col>
+    </el-row>
+
   </el-form>
 </template>
 
 <script>
-  import personSelect from '@/components/CommomSelect/person-select.vue';
-  export default {
-		components: { personSelect },
-    data() {
-      // 默认表单数据
-      const defaultWhere = {
-        code: '',
-        status: '',
-        userNo:'',
-		time: []
-      };
-      return {
-        // 表单数据
-        where: { ...defaultWhere },
-		uerList:[]
-      };
-    },
-    computed: {
-      // 是否开启响应式布局
-      styleResponsive() {
-        return this.$store.state.theme.styleResponsive;
+import personSelect from '@/components/CommomSelect/person-select.vue';
+
+export default {
+  components: {personSelect},
+  data() {
+    // 默认表单数据
+    const defaultWhere = {
+      code: '',
+      status: '',
+      userNo: '',
+      time: []
+    };
+    return {
+      // 表单数据
+      where: {...defaultWhere},
+      uerList: []
+    };
+  },
+  computed: {
+    // 是否开启响应式布局
+    styleResponsive() {
+      return this.$store.state.theme.styleResponsive;
+    }
+  },
+  created() {
+  },
+  methods: {
+    /* 搜索 */
+    search() {
+      const parmas = this.where;
+      if (parmas.time?.length) {
+        parmas.startTime = parmas.time[0];
+        parmas.endTime = parmas.time[1];
       }
+      delete parmas.time;
+      this.$emit('search', parmas);
     },
-    created(){
-    },
-    methods: {
-      /* 搜索 */
-      search() {
-        const parmas = this.where;
-        if (parmas.time?.length) {
-          parmas.startTime = parmas.time[0];
-          parmas.endTime = parmas.time[1];
-        }
-        delete parmas.time;
-        this.$emit('search', parmas);
-      },
-      /*  重置 */
-      reset() {
-        this.where = { ...this.defaultWhere };
-        this.search();
-      }
+    /*  重置 */
+    reset() {
+      this.where = {...this.defaultWhere};
+      this.search();
     }
-  };
+  }
+};
 </script>
 <style lang="scss" scoped>
-    .ele-form-actions{
-		display:flex;
-		align-items: center;
-		justify-content: flex-end;
-	}
-</style>
+.ele-form-actions {
+  display: flex;
+  align-items: center;
+  justify-content: flex-end;
+}
+</style>

+ 24 - 18
src/views/maintenance/repair/planRepair/components/maintenance-search.vue

@@ -67,24 +67,30 @@
             <el-option label="已驳回" :value="4"></el-option>
           </el-select>
         </el-form-item>
-        <div class="ele-form-actions">
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            class="ele-btn-icon"
-            @click="search"
-            size="small"
-          >
-            查询
-          </el-button>
-          <el-button
-            @click="reset"
-            icon="el-icon-refresh-left"
-            size="small"
-            type="primary"
-            >重置</el-button
-          >
-        </div>
+        <el-form-item label="组织机构:">
+          <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+
+      </el-col>
+    </el-row>
+    <el-row :gutter="15">
+      <el-col class="ele-form-actions">
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+          size="small"
+        >
+          查询
+        </el-button>
+        <el-button
+          @click="reset"
+          icon="el-icon-refresh-left"
+          size="small"
+          type="primary"
+        >重置</el-button
+        >
       </el-col>
     </el-row>
   </el-form>

+ 8 - 2
src/views/maintenance/repair/repairNotes/components/notes-search.vue

@@ -22,12 +22,12 @@
           <el-input clearable v-model="where.code" placeholder="请输入" />
         </el-form-item>
       </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 4, md: 12 } : { span: 5 }">
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 5 }">
         <el-form-item label="报修人:">
           <personSelect v-model="where.requestUserId" />
         </el-form-item>
       </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 4, md: 12 } : { span: 5 }">
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 5 }">
         <el-form-item label="状态:">
           <!-- <DictSelection dictName="报修状态" v-model="where.status" /> -->
           <el-select
@@ -49,6 +49,7 @@
       <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 5 }">
         <el-form-item label="报修时间:">
           <el-date-picker
+            style="width: 100%"
             v-model="where.time"
             type="daterange"
             @change="timeChange"
@@ -61,6 +62,11 @@
           </el-date-picker>
         </el-form-item>
       </el-col>
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:" label-width="100px">
+          <auth-selection data-type="Array" v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
       <el-col v-bind="styleResponsive ? { lg: 4, md: 12 } : { span: 4 }">
         <div class="ele-form-actions">
           <el-button

+ 34 - 18
src/views/maintenance/repair/workOrder/components/workorder-search.vue

@@ -32,7 +32,7 @@
           <personSelect v-model="where.executeUserId" />
         </el-form-item>
       </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 9, md: 12 } : { span: 9 }">
+      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 9 }">
         <el-form-item label="创建时间:">
           <el-date-picker
             v-model="where.time"
@@ -45,25 +45,41 @@
           >
           </el-date-picker>
         </el-form-item>
-        <div class="ele-form-actions">
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            class="ele-btn-icon"
-            @click="search"
-            size="small"
-          >
-            查询
-          </el-button>
-          <el-button
-            @click="reset"
-            icon="el-icon-refresh-left"
-            size="small"
-            type="primary"
-            >重置</el-button
+      </el-col>
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 5 }">
+        <el-form-item label="报修时间:">
+          <el-date-picker
+            style="width: 100%"
+            v-model="where.time"
+            type="daterange"
+            @change="timeChange"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            value-format="yyyy-MM-dd HH:mm:ss"
+            :default-time="['00:00:00', '23:59:59']"
           >
-        </div>
+          </el-date-picker>
+        </el-form-item>
       </el-col>
+      <div class="ele-form-actions">
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+          size="small"
+        >
+          查询
+        </el-button>
+        <el-button
+          @click="reset"
+          icon="el-icon-refresh-left"
+          size="small"
+          type="primary"
+        >重置</el-button
+        >
+      </div>
     </el-row>
   </el-form>
 </template>

+ 89 - 81
src/views/warning/warningMessage/components/message-search.vue

@@ -7,103 +7,111 @@
     @submit.native.prevent
   >
     <el-row :gutter="15">
-      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 5 }">
         <el-form-item label="告警级别:" label-width="80px">
           <DictSelection dictName="告警级别" clearable v-model="where.staus">
           </DictSelection>
         </el-form-item>
       </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 5 }">
         <el-form-item label="告警设备分类:">
-          <equipmentSelect v-model="where.categoryLevelId" />
+          <equipmentSelect v-model="where.categoryLevelId"/>
         </el-form-item>
       </el-col>
-	  <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
-		  <el-form-item label="告警时间:" label-width="80px">
-			<el-date-picker
-				v-model="time"
-				type="daterange"
-				range-separator="至"
-				start-placeholder="开始日期"
-				end-placeholder="结束日期"
-				value-format="yyyy-MM-dd HH:mm:ss"
-				:default-time="['00:00:00', '23:59:59']"
-				>
-			</el-date-picker>
-		  </el-form-item>
-	    </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
-		<div class="ele-form-actions">
-			<el-button
-				type="primary"
-				icon="el-icon-search"
-				class="ele-btn-icon"
-				@click="search"
-				size="small"
-			>
-				查询
-			</el-button>
-			 <el-button @click="reset"
-				 icon="el-icon-refresh-left"
-				 size="small"
-				 type="primary"
-			 >重置</el-button>
-		</div>
+      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 5 }">
+        <el-form-item label="告警时间:" label-width="80px">
+          <el-date-picker
+            v-model="time"
+            style="width: 100%"
+            type="daterange"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            value-format="yyyy-MM-dd HH:mm:ss"
+            :default-time="['00:00:00', '23:59:59']"
+          >
+          </el-date-picker>
+        </el-form-item>
+      </el-col>
+      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 5 }">
+        <el-form-item label="组织机构:">
+          <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+      <el-col v-bind="styleResponsive ? { lg: 4, md: 12 } : { span: 5 }">
+        <div class="ele-form-actions">
+          <el-button
+            type="primary"
+            icon="el-icon-search"
+            class="ele-btn-icon"
+            @click="search"
+            size="small"
+          >
+            查询
+          </el-button>
+          <el-button @click="reset"
+                     icon="el-icon-refresh-left"
+                     size="small"
+                     type="primary"
+          >重置
+          </el-button>
+        </div>
       </el-col>
     </el-row>
   </el-form>
 </template>
 
 <script>
-	import equipmentSelect from '@/components/CommomSelect/equipment-select.vue';
-  export default {
-		components: { equipmentSelect  },
-    data() {
-      // 默认表单数据
-      const defaultWhere = {
-		name:'',
-        ruleName: '',
-        code: '',
-        groupId:'',
-        status:'',
-		categoryLevelId:''
-      };
-      return {
-        // 表单数据
-        where: { ...defaultWhere },
-        time:[]
-      };
-    },
-    computed: {
-      // 是否开启响应式布局
-      styleResponsive() {
-        return this.$store.state.theme.styleResponsive;
+import equipmentSelect from '@/components/CommomSelect/equipment-select.vue';
+
+export default {
+  components: {equipmentSelect},
+  data() {
+    // 默认表单数据
+    const defaultWhere = {
+      name: '',
+      ruleName: '',
+      code: '',
+      groupId: '',
+      status: '',
+      categoryLevelId: ''
+    };
+    return {
+      // 表单数据
+      where: {...defaultWhere},
+      time: []
+    };
+  },
+  computed: {
+    // 是否开启响应式布局
+    styleResponsive() {
+      return this.$store.state.theme.styleResponsive;
+    }
+  },
+  created() {
+  },
+  methods: {
+    /* 搜索 */
+    search() {
+      if (this.time.length) {
+        this.where.startTime = this.time[0]
+        this.where.endTime = this.time[1]
       }
+      this.$emit('search', this.where);
     },
-    created(){
+    /*  重置 */
+    reset() {
+      this.time = []
+      this.where = {...this.defaultWhere};
+      this.search();
     },
-    methods: {
-      /* 搜索 */
-      search() {
-        if(this.time.length){
-        	this.where.startTime = this.time[0]
-        	this.where.endTime = this.time[1]
-        }
-        this.$emit('search', this.where);
-      },
-      /*  重置 */
-      reset() {
-		this.time = []
-        this.where = { ...this.defaultWhere };
-        this.search();
-      },
-    }
-  };
+  }
+};
 </script>
 <style lang="scss" scoped>
-    .ele-form-actions{
-		display:flex;
-		align-items: center;
-		justify-content: flex-end;
-	}
-</style>
+.ele-form-actions {
+  display: flex;
+  align-items: center;
+  justify-content: flex-end;
+}
+</style>

+ 7 - 2
src/views/warning/warningSetting/components/setting-search.vue

@@ -18,7 +18,12 @@
           <equipmentSelect v-model="where.categoryLevelId" />
         </el-form-item>
       </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 12, md: 12 } : { span: 12 }">
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
+        <el-form-item label="组织机构:">
+          <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
+        </el-form-item>
+      </el-col>
+      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
 		<div class="ele-form-actions">
 			<el-button
 				type="primary"
@@ -86,4 +91,4 @@
 		align-items: center;
 		justify-content: flex-end;
 	}
-</style>
+</style>