guoyuji
2024-04-23 8449b7205be9e73ddd353f9835a40fd1d72462d4
Merge branch 'master' of https://gitee.com/a1536384743/erp_-override
17个文件已修改
3个文件已添加
1356 ■■■■ 已修改文件
north-glass-erp/northglass-erp/package-lock.json 493 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/package.json 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/router/index.js 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/basicData/WarehouseBasicData.vue 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/basicData/WarehouseCreateBasicData.vue 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/basicData/WarehouseSearchBasicData.vue 185 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintFlowCard.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintProcess.vue 301 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/report/WorkInProgress.vue 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/vite.config.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/controller/mm/BasicWarehouseTypeController.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/entity/mm/BasicWarehouseType.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/mm/BasicWarehouseTypeMapper.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/mm/BasicWarehouseTypeService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/application.yml 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/mm/BasicWarehouseType.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/application.yml 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/mm/BasicWarehouseType.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/pp/FolwCard.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/package-lock.json
@@ -15,6 +15,7 @@
        "moment": "^2.30.1",
        "pinia": "^2.1.6",
        "pinia-plugin-persistedstate": "^3.2.0",
        "qrcode": "^1.5.3",
        "sortablejs": "^1.15.1",
        "vue": "^3.3.4",
        "vue-i18n": "^9.10.1",
@@ -831,6 +832,28 @@
        "node": ">=0.8"
      }
    },
    "node_modules/ansi-regex": {
      "version": "5.0.1",
      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
      "engines": {
        "node": ">=8"
      }
    },
    "node_modules/ansi-styles": {
      "version": "4.3.0",
      "resolved": "https://registry.npmjs.org/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/anymatch": {
      "version": "3.1.3",
      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
@@ -895,6 +918,14 @@
        "node": ">=8"
      }
    },
    "node_modules/camelcase": {
      "version": "5.3.1",
      "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
      "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
      "engines": {
        "node": ">=6"
      }
    },
    "node_modules/cfb": {
      "version": "1.2.2",
      "resolved": "https://registry.npmmirror.com/cfb/-/cfb-1.2.2.tgz",
@@ -933,6 +964,16 @@
        "fsevents": "~2.3.2"
      }
    },
    "node_modules/cliui": {
      "version": "6.0.0",
      "resolved": "https://registry.npmjs.org/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/codepage": {
      "version": "1.15.0",
      "resolved": "https://registry.npmmirror.com/codepage/-/codepage-1.15.0.tgz",
@@ -940,6 +981,22 @@
      "engines": {
        "node": ">=0.8"
      }
    },
    "node_modules/color-convert": {
      "version": "2.0.1",
      "resolved": "https://registry.npmjs.org/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/color-name": {
      "version": "1.1.4",
      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
    },
    "node_modules/combined-stream": {
      "version": "1.0.8",
@@ -973,6 +1030,14 @@
      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz",
      "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ=="
    },
    "node_modules/decamelize": {
      "version": "1.2.0",
      "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
      "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
      "engines": {
        "node": ">=0.10.0"
      }
    },
    "node_modules/delayed-stream": {
      "version": "1.0.0",
      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
@@ -980,6 +1045,11 @@
      "engines": {
        "node": ">=0.4.0"
      }
    },
    "node_modules/dijkstrajs": {
      "version": "1.0.3",
      "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz",
      "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA=="
    },
    "node_modules/dom-zindex": {
      "version": "1.0.1",
@@ -1010,6 +1080,16 @@
      "peerDependencies": {
        "vue": "^3.2.0"
      }
    },
    "node_modules/emoji-regex": {
      "version": "8.0.0",
      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
    },
    "node_modules/encode-utf8": {
      "version": "1.0.3",
      "resolved": "https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz",
      "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw=="
    },
    "node_modules/esbuild": {
      "version": "0.18.20",
@@ -1069,6 +1149,18 @@
        "node": ">=8"
      }
    },
    "node_modules/find-up": {
      "version": "4.1.0",
      "resolved": "https://registry.npmjs.org/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/follow-redirects": {
      "version": "1.15.3",
      "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz",
@@ -1122,6 +1214,14 @@
        "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
      }
    },
    "node_modules/get-caller-file": {
      "version": "2.0.5",
      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
      "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
      "engines": {
        "node": "6.* || 8.* || >= 10.*"
      }
    },
    "node_modules/glob-parent": {
      "version": "5.1.2",
      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
@@ -1152,6 +1252,14 @@
        "node": ">=0.10.0"
      }
    },
    "node_modules/is-fullwidth-code-point": {
      "version": "3.0.0",
      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
      "engines": {
        "node": ">=8"
      }
    },
    "node_modules/is-glob": {
      "version": "4.0.3",
      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
@@ -1180,6 +1288,17 @@
      },
      "funding": {
        "url": "https://github.com/sponsors/antfu"
      }
    },
    "node_modules/locate-path": {
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
      "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
      "dependencies": {
        "p-locate": "^4.1.0"
      },
      "engines": {
        "node": ">=8"
      }
    },
    "node_modules/lodash": {
@@ -1286,6 +1405,47 @@
      "resolved": "https://registry.npmjs.org/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz",
      "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw=="
    },
    "node_modules/p-limit": {
      "version": "2.3.0",
      "resolved": "https://registry.npmjs.org/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/p-locate": {
      "version": "4.1.0",
      "resolved": "https://registry.npmjs.org/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/p-try": {
      "version": "2.2.0",
      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
      "engines": {
        "node": ">=6"
      }
    },
    "node_modules/path-exists": {
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
      "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
      "engines": {
        "node": ">=8"
      }
    },
    "node_modules/pathe": {
      "version": "1.1.1",
      "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz",
@@ -1365,6 +1525,14 @@
        }
      }
    },
    "node_modules/pngjs": {
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz",
      "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==",
      "engines": {
        "node": ">=10.13.0"
      }
    },
    "node_modules/postcss": {
      "version": "8.4.31",
      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
@@ -1397,6 +1565,23 @@
      "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
      "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
    },
    "node_modules/qrcode": {
      "version": "1.5.3",
      "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.3.tgz",
      "integrity": "sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==",
      "dependencies": {
        "dijkstrajs": "^1.0.1",
        "encode-utf8": "^1.0.3",
        "pngjs": "^5.0.0",
        "yargs": "^15.3.1"
      },
      "bin": {
        "qrcode": "bin/qrcode"
      },
      "engines": {
        "node": ">=10.13.0"
      }
    },
    "node_modules/readdirp": {
      "version": "3.6.0",
      "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
@@ -1407,6 +1592,19 @@
      "engines": {
        "node": ">=8.10.0"
      }
    },
    "node_modules/require-directory": {
      "version": "2.1.1",
      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
      "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
      "engines": {
        "node": ">=0.10.0"
      }
    },
    "node_modules/require-main-filename": {
      "version": "2.0.0",
      "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
      "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
    },
    "node_modules/rollup": {
      "version": "3.29.4",
@@ -1423,6 +1621,11 @@
      "optionalDependencies": {
        "fsevents": "~2.3.2"
      }
    },
    "node_modules/set-blocking": {
      "version": "2.0.0",
      "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
      "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
    },
    "node_modules/sortablejs": {
      "version": "1.15.1",
@@ -1446,6 +1649,30 @@
      },
      "engines": {
        "node": ">=0.8"
      }
    },
    "node_modules/string-width": {
      "version": "4.2.3",
      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
      "dependencies": {
        "emoji-regex": "^8.0.0",
        "is-fullwidth-code-point": "^3.0.0",
        "strip-ansi": "^6.0.1"
      },
      "engines": {
        "node": ">=8"
      }
    },
    "node_modules/strip-ansi": {
      "version": "6.0.1",
      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
      "dependencies": {
        "ansi-regex": "^5.0.1"
      },
      "engines": {
        "node": ">=8"
      }
    },
    "node_modules/to-fast-properties": {
@@ -1607,6 +1834,11 @@
      "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz",
      "integrity": "sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw=="
    },
    "node_modules/which-module": {
      "version": "2.0.1",
      "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz",
      "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ=="
    },
    "node_modules/wmf": {
      "version": "1.0.2",
      "resolved": "https://registry.npmmirror.com/wmf/-/wmf-1.0.2.tgz",
@@ -1621,6 +1853,19 @@
      "integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==",
      "engines": {
        "node": ">=0.8"
      }
    },
    "node_modules/wrap-ansi": {
      "version": "6.2.0",
      "resolved": "https://registry.npmjs.org/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/xe-utils": {
@@ -1646,6 +1891,44 @@
      },
      "engines": {
        "node": ">=0.8"
      }
    },
    "node_modules/y18n": {
      "version": "4.0.3",
      "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
      "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
    },
    "node_modules/yargs": {
      "version": "15.4.1",
      "resolved": "https://registry.npmjs.org/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/yargs-parser": {
      "version": "18.1.3",
      "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
      "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
      "dependencies": {
        "camelcase": "^5.0.0",
        "decamelize": "^1.2.0"
      },
      "engines": {
        "node": ">=6"
      }
    }
  },
@@ -2130,6 +2413,19 @@
      "resolved": "https://registry.npmmirror.com/adler-32/-/adler-32-1.3.1.tgz",
      "integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A=="
    },
    "ansi-regex": {
      "version": "5.0.1",
      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
    },
    "ansi-styles": {
      "version": "4.3.0",
      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
      "requires": {
        "color-convert": "^2.0.1"
      }
    },
    "anymatch": {
      "version": "3.1.3",
      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
@@ -2182,6 +2478,11 @@
        "fill-range": "^7.0.1"
      }
    },
    "camelcase": {
      "version": "5.3.1",
      "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
      "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
    },
    "cfb": {
      "version": "1.2.2",
      "resolved": "https://registry.npmmirror.com/cfb/-/cfb-1.2.2.tgz",
@@ -2206,10 +2507,33 @@
        "readdirp": "~3.6.0"
      }
    },
    "cliui": {
      "version": "6.0.0",
      "resolved": "https://registry.npmjs.org/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"
      }
    },
    "codepage": {
      "version": "1.15.0",
      "resolved": "https://registry.npmmirror.com/codepage/-/codepage-1.15.0.tgz",
      "integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA=="
    },
    "color-convert": {
      "version": "2.0.1",
      "resolved": "https://registry.npmjs.org/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.npmjs.org/color-name/-/color-name-1.1.4.tgz",
      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
    },
    "combined-stream": {
      "version": "1.0.8",
@@ -2234,10 +2558,20 @@
      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz",
      "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ=="
    },
    "decamelize": {
      "version": "1.2.0",
      "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
      "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA=="
    },
    "delayed-stream": {
      "version": "1.0.0",
      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
      "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
    },
    "dijkstrajs": {
      "version": "1.0.3",
      "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz",
      "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA=="
    },
    "dom-zindex": {
      "version": "1.0.1",
@@ -2265,6 +2599,16 @@
        "memoize-one": "^6.0.0",
        "normalize-wheel-es": "^1.2.0"
      }
    },
    "emoji-regex": {
      "version": "8.0.0",
      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
    },
    "encode-utf8": {
      "version": "1.0.3",
      "resolved": "https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz",
      "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw=="
    },
    "esbuild": {
      "version": "0.18.20",
@@ -2314,6 +2658,15 @@
        "to-regex-range": "^5.0.1"
      }
    },
    "find-up": {
      "version": "4.1.0",
      "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
      "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
      "requires": {
        "locate-path": "^5.0.0",
        "path-exists": "^4.0.0"
      }
    },
    "follow-redirects": {
      "version": "1.15.3",
      "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz",
@@ -2340,6 +2693,11 @@
      "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
      "optional": true
    },
    "get-caller-file": {
      "version": "2.0.5",
      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
      "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
    },
    "glob-parent": {
      "version": "5.1.2",
      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
@@ -2361,6 +2719,11 @@
      "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
      "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="
    },
    "is-fullwidth-code-point": {
      "version": "3.0.0",
      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
    },
    "is-glob": {
      "version": "4.0.3",
      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
@@ -2378,6 +2741,14 @@
      "version": "0.4.3",
      "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz",
      "integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g=="
    },
    "locate-path": {
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
      "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
      "requires": {
        "p-locate": "^4.1.0"
      }
    },
    "lodash": {
      "version": "4.17.21",
@@ -2449,6 +2820,32 @@
      "resolved": "https://registry.npmjs.org/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz",
      "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw=="
    },
    "p-limit": {
      "version": "2.3.0",
      "resolved": "https://registry.npmjs.org/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.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
      "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
      "requires": {
        "p-limit": "^2.2.0"
      }
    },
    "p-try": {
      "version": "2.2.0",
      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
    },
    "path-exists": {
      "version": "4.0.0",
      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
      "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
    },
    "pathe": {
      "version": "1.1.1",
      "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz",
@@ -2487,6 +2884,11 @@
      "integrity": "sha512-tZbNGf2vjAQcIm7alK40sE51Qu/m9oWr+rEgNm/2AWr1huFxj72CjvpQcIQzMknDBJEkQznCLAGtJTIcLKrKdw==",
      "requires": {}
    },
    "pngjs": {
      "version": "5.0.0",
      "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz",
      "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw=="
    },
    "postcss": {
      "version": "8.4.31",
      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
@@ -2502,6 +2904,17 @@
      "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
      "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
    },
    "qrcode": {
      "version": "1.5.3",
      "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.3.tgz",
      "integrity": "sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==",
      "requires": {
        "dijkstrajs": "^1.0.1",
        "encode-utf8": "^1.0.3",
        "pngjs": "^5.0.0",
        "yargs": "^15.3.1"
      }
    },
    "readdirp": {
      "version": "3.6.0",
      "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
@@ -2509,6 +2922,16 @@
      "requires": {
        "picomatch": "^2.2.1"
      }
    },
    "require-directory": {
      "version": "2.1.1",
      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
      "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q=="
    },
    "require-main-filename": {
      "version": "2.0.0",
      "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
      "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
    },
    "rollup": {
      "version": "3.29.4",
@@ -2518,6 +2941,11 @@
      "requires": {
        "fsevents": "~2.3.2"
      }
    },
    "set-blocking": {
      "version": "2.0.0",
      "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
      "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
    },
    "sortablejs": {
      "version": "1.15.1",
@@ -2535,6 +2963,24 @@
      "integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==",
      "requires": {
        "frac": "~1.1.2"
      }
    },
    "string-width": {
      "version": "4.2.3",
      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
      "requires": {
        "emoji-regex": "^8.0.0",
        "is-fullwidth-code-point": "^3.0.0",
        "strip-ansi": "^6.0.1"
      }
    },
    "strip-ansi": {
      "version": "6.0.1",
      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
      "requires": {
        "ansi-regex": "^5.0.1"
      }
    },
    "to-fast-properties": {
@@ -2628,6 +3074,11 @@
      "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz",
      "integrity": "sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw=="
    },
    "which-module": {
      "version": "2.0.1",
      "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz",
      "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ=="
    },
    "wmf": {
      "version": "1.0.2",
      "resolved": "https://registry.npmmirror.com/wmf/-/wmf-1.0.2.tgz",
@@ -2637,6 +3088,16 @@
      "version": "0.3.0",
      "resolved": "https://registry.npmmirror.com/word/-/word-0.3.0.tgz",
      "integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA=="
    },
    "wrap-ansi": {
      "version": "6.2.0",
      "resolved": "https://registry.npmjs.org/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"
      }
    },
    "xe-utils": {
      "version": "3.5.14",
@@ -2656,6 +3117,38 @@
        "wmf": "~1.0.1",
        "word": "~0.3.0"
      }
    },
    "y18n": {
      "version": "4.0.3",
      "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
      "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
    },
    "yargs": {
      "version": "15.4.1",
      "resolved": "https://registry.npmjs.org/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.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
      "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
      "requires": {
        "camelcase": "^5.0.0",
        "decamelize": "^1.2.0"
      }
    }
  }
}
north-glass-erp/northglass-erp/package.json
@@ -15,6 +15,7 @@
    "moment": "^2.30.1",
    "pinia": "^2.1.6",
    "pinia-plugin-persistedstate": "^3.2.0",
    "qrcode": "^1.5.3",
    "sortablejs": "^1.15.1",
    "vue": "^3.3.4",
    "vue-i18n": "^9.10.1",
north-glass-erp/northglass-erp/src/router/index.js
@@ -900,6 +900,28 @@
          ]
        },
        {
          /*----------- 基础数据 ----------------*/
          path: 'warehouseBasicData',
          name: 'warehouseBasicData',
          component: () => import('../views/mm/basicData/WarehouseBasicData.vue'),
          children: [
            {
              path: 'warehouseSearchBasicData',
              name: 'warehouseSearchBasicData',
              component: () => import('../views/mm/basicData/WarehouseSearchBasicData.vue'),
            },
            {
              path: 'warehouseCreateBasicData',
              name: 'warehouseCreateBasicData',
              component: () => import('../views/mm/basicData/WarehouseCreateBasicData.vue'),
            },
            {
              path: '',
              redirect: '/main/warehouseBasicData/warehouseSearchBasicData'
            }
          ]
        },
        {
          path: '',
          redirect:'/main/order'
        }
north-glass-erp/northglass-erp/src/views/mm/basicData/WarehouseBasicData.vue
New file
@@ -0,0 +1,61 @@
<script setup>
import {ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue"
import {useRouter,useRoute,onBeforeRouteUpdate} from "vue-router"
import {useI18n} from "vue-i18n"
const { t } = useI18n()
const router = useRouter()
const route = useRoute()
let indexFlag=$ref(1)
function changeRouter(index){
  indexFlag=index
}
</script>
<template>
  <div id="main-div">
    <div id="div-title">
      <el-breadcrumb :separator-icon="ArrowRight">
        <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/warehouseBasicData/warehouseSearchBasicData' }">基础数据</el-breadcrumb-item>
      </el-breadcrumb>
    </div>
    <div id="main-body">
      <router-view :key="route.fullPath" />
    </div>
  </div>
</template>
<style scoped>
#main-div{
  width: 99%;
  height: 100%;
}
#div-title{
  height: 2%;
  width: 100%;
}
#searchButton{
  margin-top: -5px;
  margin-left: 1rem;
}
#searchButton1{
//margin-left: 10rem;
}
/*main-body样式*/
#main-body{
  width: 100%;
  height: 95%;
  margin-top: 1%;
}
#select{
  margin-left:0.5rem;
}
:deep(.indexTag .el-breadcrumb__inner){
  color: #5CADFE !important;
}
</style>
north-glass-erp/northglass-erp/src/views/mm/basicData/WarehouseCreateBasicData.vue
New file
@@ -0,0 +1,136 @@
<script setup>
import request from "@/utils/request"
import {onMounted, ref, watch} from "vue";
import {useI18n} from "vue-i18n"
import {ElMessage} from "element-plus"
import {useRouter,useRoute} from "vue-router"
const { t } = useI18n()
const router = useRouter()
const route = useRoute()
let basic = ref({
  operateType:'',
  type : '',
  input:''
})
let options=ref([
  { label: "库存组织",
    value: "inventoryOrganization",
  },
  { label: "领出",
    value: "takeOut",
  },
  { label: "材料出库类型",
    value: "outboundType",
  },
  { label: "材料返库类型",
    value: "returningType",
  },
])
let props = defineProps({
  rowIndex:{
    Object,
    default: null
  }
})
onMounted(() =>{
  if(props.rowIndex){
    basic.value.operateType =  props.rowIndex.operateType
    basic.value.type =  props.rowIndex.type
    basic.value.input =  props.rowIndex.operateTypeName
  }
})
const emit =  defineEmits(['gaveParent'])
const saveBasicData =  () =>{
  if (basic.value.operateType[0]==='inventoryOrganization'){
    basic.value.type='库存组织'
  }
  else if(basic.value.operateType[0]==='takeOut'){
    basic.value.type='领出'
  }
  else if(basic.value.operateType[0]==='outboundType'){
    basic.value.type='材料出库类型'
  }
  else if(basic.value.operateType[0]==='returningType'){
    basic.value.type='材料返库类型'
  }
  if(basic.value.operateType[0]==='' || basic.value.input===''){
    return
  }
  request.post(`/BasicWarehouse/addBasicWarehouse`, basic.value).then(res => {
    if (res.data) {
      ElMessage.success('保存成功')
      emit('gaveParent', true)
    }
  })
}
const updateBasicData =  () =>{
  let submitArr  = props.rowIndex
  submitArr.operateType = basic.value.operateType
  submitArr.type = basic.value.type
  submitArr.operateTypeName = basic.value.input
  if(basic.value.input===''){
    ElMessage.warning('请输入数据')
  }else{
    request.post(`/BasicWarehouse/updateBasicWarehouse`, submitArr).then(res => {
      if (res.data) {
        ElMessage.success('修改成功')
        emit('gaveParent', true)
      }
    })
  }
}
const handleChange = (value) => {
  const filterArr = options.value.filter((item) =>item.value === value[0]
  ).map((item) =>item.children.filter((item) =>item.value === value[1]))
}
</script>
<template>
  <div>
    <el-row>
      <el-col :span="4">基础类型:</el-col>
      <el-col :span="12">
        <el-cascader
            v-model="basic.operateType"
            :options="options"
            clearable
            placeholder=""
            :disabled="props.rowIndex"
        />
      </el-col>
    </el-row>
    <el-row>
      <el-col :span="4">名称:</el-col>
      <el-col :span="12">
        <el-input v-model="basic.input"/>
      </el-col>
    </el-row>
    <el-row>
      <el-col :span="4"></el-col>
      <el-col :span="12">
        <el-button v-show="!props.rowIndex" @click="saveBasicData" type="primary">新增</el-button>
        <el-button v-show="props.rowIndex" @click="updateBasicData" type="primary">修改</el-button>
      </el-col>
    </el-row>
  </div>
</template>
<style scoped>
div{
  text-align: center;
}
.el-row{
  margin-top: 10px;
}
</style>
north-glass-erp/northglass-erp/src/views/mm/basicData/WarehouseSearchBasicData.vue
New file
@@ -0,0 +1,185 @@
<script setup>
import {reactive, ref} from "vue";
import {VXETable} from "vxe-table";
import {ElMessage} from "element-plus";
import request from "@/utils/request"
import CreateBasicData from "@/views/sd/basicData/CreateBasicData.vue"
import {useRouter,useRoute} from "vue-router"
import {useI18n} from "vue-i18n"
import WarehouseCreateBasicData from "@/views/mm/basicData/WarehouseCreateBasicData.vue";
const { t } = useI18n()
let dialogTableVisible = ref(false)
const router = useRouter()
const xGrid = ref()
const gridOptions = reactive({
  border:  "full",//表格加边框
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe:true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true,height: 30},//鼠标移动或选择高亮
  id: 'OrderList',
  showFooter: true,//显示脚
  printConfig: {},
  importConfig: {},
  exportConfig: {},
  scrollY:{ enabled: true },//开启虚拟滚动
  showOverflow:true,
  columnConfig: {
    resizable: true,
    useKey: true
  },
  filterConfig: {   //筛选配置项
    remote: true
  },
  customConfig: {
    storage: true
  },
  editConfig: {
    trigger: 'click',
    mode: 'row',
    showStatus: true
  },
  //表头参数
  columns:[
    {title: t('basicData.operate'), width: 110, slots: { default: 'button_slot' },fixed:"left",},
    {type: 'seq', title: '序号', width: 80 ,fixed:"left",},
    {field:'operateTypeName',title: '名称'},
    {field:'operateType',title: '别称'},
    {field:'type',title: '类型'},
    {field:'createTime',title: '创建日期'},
  ],
  //表头按钮
  toolbarConfig: {
    buttons: [
      {'code': 'add', 'name': '新增',status: 'primary'},
    ],
    // import: false,
    // export: true,
    // print: true,
    zoom: true,
    custom: true
  },
  footerMethod ({ columns, data }) {//页脚函数
    return[
      columns.map((column, columnIndex) => {
        // if (columnIndex === 0) {
        //   return t('basicData.total')
        // }
        // if (props.tableProp.footList.includes(column.field)) {
        //   return sumNum(data, column.field)
        // }
        return ''
      })
    ]
  }
})
const gridEvents = {
  toolbarButtonClick ({ code }) {
    const $grid = xGrid.value
    if ($grid) {
      switch (code) {
        case 'add': {
          rowIndex.value = null
          dialogTableVisible.value = true
          break
        }
      }
    }
  },
  menuClick ({ menu, row, column }) {
    const $grid = xGrid.value
    if ($grid) {
      switch (menu.code) {
      }
    }
  }
}
request.get('/BasicWarehouse/getBasicWarehouse').then(res => {
  if(res.code==='200'){
    xGrid.value.reloadData(res.data)
  }
})
const getChildrenFunction = (flag) => {
  if(flag){
    router.push({
      path:'/main/warehouseBasicData/warehouseSearchBasicData',
      query:{random:Math.random()
      }
    })
  }
}
let rowIndex = ref(null)
const getTableRow =  (row,type) => {
  switch (type) {
    case 'edit': {
      rowIndex.value = row
      dialogTableVisible.value = true
      break
    }
    case 'delete': {
      request.post(`/BasicWarehouse/deleteBasicWarehouse`,row).then((res) => {
        if(res.code==200){
          ElMessage.success(t('searchOrder.msgDeleteSuccess'))
          router.push({
            path:'/main/warehouseBasicData/warehouseSearchBasicData',
            query:{random:Math.random()
            }
          })
        }else{
          ElMessage.warning(t('searchOrder.msgDeleteFail'))
        }
      })
      break
    }
  }
}
</script>
<template>
  <div>
    <vxe-grid
        style="width: 40vw;"
        class="mytable-scrollbar"
        max-height="500px"
        ref="xGrid"
        v-bind="gridOptions"
        v-on="gridEvents"
    >
      <template #button_slot="{ row }">
        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">{{ $t('basicData.edit') }}</el-button>
        <el-popconfirm @confirm="getTableRow(row,'delete')" title="确定删除数据?">
          <template #reference>
            <el-button  link type="primary" size="small">{{ $t('basicData.delete') }}</el-button>
          </template>
        </el-popconfirm>
      </template>
    </vxe-grid>
    <el-dialog
        v-model="dialogTableVisible"
        destroy-on-close
        style="width: 30%;height:30% ">
      <WarehouseCreateBasicData :rowIndex="rowIndex" @gaveParent='getChildrenFunction'/>
    </el-dialog>
  </div>
</template>
<style scoped>
</style>
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintFlowCard.vue
@@ -191,8 +191,8 @@
    if ($grid) {
      switch (code) {
        case 'print': {
          if(selectRecords.value===null){
          console.log( selectRecords)
          if(selectRecords===null ||selectRecords===''||selectRecords.length===0){
            ElMessage.warning(t('searchOrder.msgList.checkOrder'))
            return
          }
@@ -206,6 +206,9 @@
            }
          }
          router.push({path: '/main/processCard/printProcess', query: {printList: JSON.stringify(selectRecords)}})
          // let routeData = router.resolve({path: '/main/processCard/printProcess', query: {printList: JSON.stringify(selectRecords)}});
          // window.open(routeData.href, '_blank');
          //dialogTableVisible.value = true
          break
        }
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintProcess.vue
@@ -5,111 +5,131 @@
import {Search} from "@element-plus/icons-vue"
import {useRouter} from 'vue-router'
import {changeFilterEvent, filterChanged} from "@/hook"
import {useI18n} from 'vue-i18n'
import deepClone from "@/utils/deepClone";
import QRCode from "qrcode";
//语言获取
const {t} = useI18n()
let router = useRouter()
let produceList = ref([])
let details = ref([])
let list = ref()
const details = ref([])
const data = ref({
  printList:[]
  printList: []
})
const {currentRoute} = useRouter()
const route = currentRoute.value
data.value.printList = JSON.parse(route.query.printList)
let flowCardCount=data.value.printList.length
let flowCardCount = data.value.printList.length
onMounted(() => {
  // if (id === null || id === undefined || id === '') {
  //   return
  // }
      // if (id === null || id === undefined || id === '') {
      //   return
      // }
      request.post(`/processCard/getSelectPrinting`, data.value).then((res) => {
        if (res.code == 200) {
          produceList.value = deepClone(res.data.data)
          handleGetQRCode()
        } else {
          ElMessage.warning(res.msg)
          router.push("/login")
        }
      })
    }
  )
)
const handleGetQRCode = async () => {
  for (let i = 0; i < produceList.value.length; i++) {
    list= produceList.value[i].detail[0].processIdNumber;
    const url = `${list}`;
    // 生成 QR Code 并存储到变量中
    const qrcode = ref('');
    qrcode.value =  await QRCode.toDataURL(url);
    produceList.value[i].detail[0]["qrcode"]=qrcode.value
  }
};
// 打印方法
const printFlowCard = () => {
  // 需要打印的局部区域赋予"print-wrap"的id
  let el = document.getElementById("printFlowCard");
  let doc = document;
  let body = doc.body || doc.getElementsByTagName("body")[0];
  let printId = "print-" + Date.now();
  const printFlowCard = () => {
    // 需要打印的局部区域赋予"print-wrap"的id
    let el = document.getElementById("printFlowCard");
    let doc = document;
    let body = doc.body || doc.getElementsByTagName("body")[0];
    let printId = "print-" + Date.now();
  // 创建无副作用的打印容器(因不确定页面的打印元素有无其它样式)
  let content = doc.createElement("div");
  content.id = printId;
    // 创建无副作用的打印容器(因不确定页面的打印元素有无其它样式)
    let content = doc.createElement("div");
    content.id = printId;
  // 样式控制与打印无关的元素隐藏
  let style = doc.createElement("style");
  style.innerHTML =
      "body>#" +
      printId +
      "{display:none}@media print{body>:not(#" +
      printId +
      "){display:none !important}body>#" +
      printId +
      "{display:block;padding-top:1px}}";
  //
   content.innerHTML = el.outerHTML;
  // // console.log("el.outerHTML", el.outerHTML);
  body.appendChild(style);
    // 样式控制与打印无关的元素隐藏
    let style = doc.createElement("style");
    style.innerHTML =
        "body>#" +
        printId +
        "{display:none}@media print{body>:not(#" +
        printId +
        "){display:none !important}body>#" +
        printId +
        "{display:block;padding-top:1px}}";
    //
    content.innerHTML = el.outerHTML;
    // // console.log("el.outerHTML", el.outerHTML);
    body.appendChild(style);
  // 与style元素设置的样式相配合
  // 把打印内容的元素添加到body(作为body的子元素,可用body的子选择器 '>' 控制打印样式)
  body.appendChild(content);
  setTimeout(() => {
    window.print();
    body.removeChild(content);
    body.removeChild(style);
  }, 20);
}
    // 与style元素设置的样式相配合
    // 把打印内容的元素添加到body(作为body的子元素,可用body的子选择器 '>' 控制打印样式)
    body.appendChild(content);
    setTimeout(() => {
      window.print();
      body.removeChild(content);
      body.removeChild(style);
    }, 20);
  }
</script>
<template>
  <el-button id="printButton" @click="printFlowCard">打印</el-button>
  <el-button id="printButton" @click="printFlowCard();">打印</el-button>
  <div id="printFlowCard">
    <table v-for="(item,id) in produceList" id="contentTable" :key="id">
      <thead>
      <tr v-for="(itemFlow,index) in item.detail" :key="index">
        <td colspan="24">
          <div id="bj" style="float: right;font-size: 28px">{{ id+1 }}</div>
          <div id="bj" style="float: right;font-size: 28px">{{ id + 1 }}</div>
          <div>常州市吉利玻璃有限公司</div>
          <div>生产流程卡</div>
          <div style="text-align: right;font-weight: bolder">流程卡号: {{ itemFlow.process_id }}/{{ itemFlow.technologyNumber }} 共 {{flowCardCount}} 架</div>
          <div style="text-align: right;font-weight: bolder">流程卡号: {{
              itemFlow.process_id
            }}/{{ itemFlow.technologyNumber }} 共 {{ flowCardCount }} 架
          </div>
        </td>
      </tr>
      <tr v-for="(items,index) in item.detail" :key="index">
        <td>客户名称:</td>
        <td class="tdNowrap">客户名称:</td>
        <td colspan="2">{{ items.customer_name }}</td>
        <td>项目名称:</td>
        <td class="tdNowrap">项目名称:</td>
        <td colspan="2">{{ items.project }}</td>
        <td style="width:100px">工艺流程:</td>
        <td class="tdNowrap">工艺流程:</td>
        <td colspan="16">{{ items.process }}</td>
      </tr>
      <tr v-for="(itemTr,index) in item.detail" :key="index">
        <td>磨边类型:</td>
        <td class="tdNowrap">磨边类型:</td>
        <td colspan="2">{{ itemTr.edging_type }}</td>
        <td>单片名称:</td>
        <td class="tdNowrap">单片名称:</td>
        <td colspan="2">{{ itemTr.glass_child }}</td>
        <td>产品名称:</td>
        <td class="tdNowrap">产品名称:</td>
        <td colspan="16">{{ itemTr.product_name }}</td>
      </tr>
      </thead>
      <tbody>
      <tr>
        <td rowspan='2'>序号</td>
        <td rowspan='2'>宽*高</td>
@@ -118,14 +138,15 @@
        <td rowspan='2'>周长</td>
        <td rowspan='2'>半径</td>
        <td rowspan='2'>备注</td>
        <td colspan='2'>切割</td>
        <td colspan='2'>磨边</td>
        <td colspan='2'>钢化</td>
        <td colspan='2'>中空</td>
        <td colspan='2'>包装</td>
        <td colspan='2'></td>
        <td colspan='2'></td>
        <td colspan='2'></td>
        <td v-for="(itemPr,index) in item.processList" :key="index" colspan="2">{{ itemPr.process }}</td>
        <!--        <td colspan='2'>切割</td>-->
        <!--        <td colspan='2'>磨边</td>-->
        <!--        <td colspan='2'>钢化</td>-->
        <!--        <td colspan='2'>中空</td>-->
        <!--        <td colspan='2'>包装</td>-->
        <!--        <td colspan='2'></td>-->
        <!--        <td colspan='2'></td>-->
        <!--        <td colspan='2'></td>-->
      </tr>
      <tr>
        <td>正品</td>
@@ -145,10 +166,13 @@
        <td>正品</td>
        <td>次品</td>
      </tr>
      </thead>
      <tbody>
      <tr v-for="(itemDatile,index) in item.detailList" :key="index">
        <td>{{ itemDatile.order_number }}</td>
        <td>{{ itemDatile.child_width }}</td>
        <td>{{ itemDatile.quantity }}</td>
        <td class="item">{{ itemDatile.quantity }}</td>
        <td>{{ itemDatile.total_area }}</td>
        <td>{{ itemDatile.perimeter }}</td>
        <td>{{ itemDatile.bend_radius }}</td>
@@ -172,19 +196,20 @@
      </tr>
      </tbody>
      <tfoot>
      <tr>
        <td colspan="24" v-for="(itemsum,index) in item.detail" :key="index">
      <tr style="height: 14px">
        <td v-for="(itemsum,index) in item.detail" :key="index" colspan="24">
          数量:
          <label>{{ itemsum.quantity }}</label>
          面积:
          <label>{{ itemsum.gross_area }}</label>
          重量:
          <label>{{ itemsum.gross_area }}</label>
          <label>{{ itemsum.weight }}</label>
        </td>
      </tr>
      <tr v-for="(itemtextarea,index) in item.detail" :key="index">
        <td colspan="6" rowspan="6" style="width: 450px;height: 150px ">
          <div style="width: 100%;height: 100%"><textarea style="height: 98%;width: 98%">{{ itemtextarea.processing_note }}</textarea></div>
        <td colspan="6" rowspan="6" style="width: 480px;height: 100px ">
          <div style="width: 100%;height: 100%"><textarea style="height: 99%;width: 99%">{{ itemtextarea.processing_note }}</textarea>
          </div>
        </td>
        <td>完工签名</td>
        <td></td>
@@ -203,25 +228,25 @@
        <td></td>
        <td></td>
      </tr>
      <tr>
        <td>接受签名</td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
      </tr>
<!--      <tr>-->
<!--        <td>接受签名</td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--        <td></td>-->
<!--      </tr>-->
      <tr>
        <td>生产日期</td>
        <td></td>
@@ -260,29 +285,40 @@
        <td></td>
        <td></td>
      </tr>
      <tr>
        <td>架子编号</td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
      </tr>
      <tr>
        <td colspan="17" rowspan="2">
          <div style="width: 60px;height: 60px;background-color: red"></div>
      <!--      <tr>-->
      <!--        <td>架子编号</td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--        <td></td>-->
      <!--      </tr>-->
      <tr v-for="(qrCodeItem,index) in item.detail" :key="index">
        <td rowspan="2">
          <div class='qrCode' style="width: 80px;height: 80px;">
            <img :src= qrCodeItem.qrcode>
<!--            {{-->
<!--              getUrl(qrCodeItem.process_id)-->
<!--            }}-->
          </div>
        </td>
        <td colspan="16">
          <span style="float: left;font-weight: bolder">{{ qrCodeItem.processIdNumber }}</span>
        </td>
      </tr>
      </tfoot>
    </table>
@@ -296,7 +332,7 @@
  padding: 0;
}
#printButton{
#printButton {
  margin-top: -40px;
  width: 100px;
}
@@ -304,8 +340,7 @@
#printFlowCard {
  margin-top: -40px;
  text-align: center;
  //font-weight: bolder;
  height: 600px;
//font-weight: bolder; height: 600px;
}
#contentTable {
@@ -327,32 +362,54 @@
#contentTable tr td {
  border: 1px solid black;
  height: 22px;
  height: 18px;
  font-weight: bolder;
}
#contentTable tbody{
  height: 22px;
#contentTable tbody {
  white-space: nowrap;
}
#contentTable tbody td {
  width: 50px;
.tdNowrap {
  white-space: nowrap;
}
#contentTable tfoot{
#contentTable tfoot {
  font-size: 12px;
  font-weight: bolder;
}
/* 在 .footer 元素后始终插入分页符 */
@media print {
  #contentTable {page-break-after: always;}
  tbody {
    display: table-row-group;
  }
  table {
    page-break-before: always;
  }
  table {
    page-break-inside: auto;
  }
  thead {
    display: table-header-group;
  }
  tfoot {
    display: table-footer-group;
    page-break-inside: avoid;
  }
}
thead { display:table-header-group;page-break-inside:avoid; }
tbody { display:table-row-group;}
tfoot { display:table-footer-group;page-break-inside:avoid; }
.qrCode img {
  width: 100%;
  height: 100%;
}
</style>
north-glass-erp/northglass-erp/src/views/pp/report/WorkInProgress.vue
@@ -3,23 +3,6 @@
import {reactive, ref} from "vue";
import {useRouter} from  'vue-router'
let router=useRouter()
const getTableRow = (row,type) =>{
  switch (type) {
    case 'edit' :{
      //alert('我接收到子组件传送的编辑信息')
      router.push({path: '/main/reportingWorks/ReportingWorkDetail', query: { id: row.id }})
      break
    }
    case 'delete':{
      alert('我接收到子组件传送的删除信息')
      break
    }
    case  'setType':{
      alert('我接收到子组件传送的反审状态')
      break
    }
  }
}
//表尾求和
const sumNum = (list, field) => {
north-glass-erp/northglass-erp/vite.config.js
@@ -16,7 +16,7 @@
    }
  }, 
  server: {
    port: 5173,//端口号
    port: 80,//端口号
    host: true,//ip地址 或 '0.0.0.0' 或 "loaclhost"
    open: false, //启动后是否自动打开浏览器
    https: false, // 是否开启 https
north-glass-erp/src/main/java/com/example/erp/controller/mm/BasicWarehouseTypeController.java
@@ -1,13 +1,14 @@
package com.example.erp.controller.mm;
import com.example.erp.common.Result;
import com.example.erp.entity.mm.BasicWarehouseType;
import com.example.erp.entity.sd.BasicData;
import com.example.erp.service.mm.BasicWarehouseTypeService;
import com.example.erp.service.sd.BasicDateService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
@RestController
@RequestMapping("/BasicWarehouse")
@@ -24,4 +25,24 @@
        return Result.seccess(basicWarehouseTypeService.getBasicWarehouseTypes(type));
    }
    @GetMapping("/getBasicWarehouse")
    public Result getBasicWarehouse(){
        return Result.seccess(basicWarehouseTypeService.getBasicWarehouse());
    }
    @PostMapping("addBasicWarehouse")
    public Result addBasicWarehouse(@RequestBody Map<String,Object> map){
        return  Result.seccess(basicWarehouseTypeService.addBasicWarehouse(map));
    }
    @PostMapping("updateBasicWarehouse")
    public Result updateBasicWarehouse(@RequestBody BasicWarehouseType basicWarehouseType){
        return  Result.seccess(basicWarehouseTypeService.updateBasicWarehouse(basicWarehouseType));
    }
    @PostMapping("deleteBasicWarehouse")
    public Result deleteBasicWarehouse(@RequestBody BasicWarehouseType basicWarehouseType){
        return  Result.seccess(basicWarehouseTypeService.deleteBasicWarehouse(basicWarehouseType));
    }
}
north-glass-erp/src/main/java/com/example/erp/entity/mm/BasicWarehouseType.java
@@ -11,7 +11,6 @@
    @TableId(type = IdType.AUTO)
    private Long id;
    private Integer operateTypeId;
    private String operateTypeName;
    private String operateType;
    private String type;
north-glass-erp/src/main/java/com/example/erp/mapper/mm/BasicWarehouseTypeMapper.java
@@ -2,6 +2,7 @@
import com.example.erp.entity.mm.BasicWarehouseType;
import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.sd.BasicData;
import com.example.erp.entity.sd.OrderDetail;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -19,5 +20,15 @@
    List<String> getBasicWarehouse(String type);
    List<BasicWarehouseType> getBasicWarehouseTypeAll();
    Boolean insertBasicWarehouse(@Param("operateTypeName") String operateTypeName,
                                 @Param("operateType") String operateType,
                                 @Param("type") String type);
    Boolean deleteBasicWarehouse(@Param("id") Long id);
    Boolean updateBasicWarehouse(@Param("id") Long id,@Param("operateTypeName") String operateTypeName);
}
north-glass-erp/src/main/java/com/example/erp/service/mm/BasicWarehouseTypeService.java
@@ -28,7 +28,6 @@
        for (BasicWarehouseType item : basicWarehouseType){
            Map<String, Object> map = new HashMap<>();
            map.put("id",item.getId());
            map.put("OperateTypeId",item.getOperateTypeId());
            map.put("OperateTypeName",item.getOperateTypeName());
            map.put("OperateType",item.getOperateType());
            map.put("Type","");
@@ -65,5 +64,24 @@
        return BasicDataMap;
    }
    public List<BasicWarehouseType> getBasicWarehouse() {
        return basicWarehouseTypeMapper.getBasicWarehouseTypeAll();
    }
    public boolean addBasicWarehouse(Map<String, Object> map) {
        List<String>  basicTypeList = (List<String>) map.get("operateType");
        basicWarehouseTypeMapper.insertBasicWarehouse(map.get("input").toString(),basicTypeList.get(0),map.get("type").toString());
        return true;
    }
    public boolean deleteBasicWarehouse(BasicWarehouseType basicWarehouseType) {
        return  basicWarehouseTypeMapper.deleteBasicWarehouse(basicWarehouseType.getId());
    }
    public boolean updateBasicWarehouse(BasicWarehouseType basicWarehouseType) {
        return  basicWarehouseTypeMapper.updateBasicWarehouse(basicWarehouseType.getId(),basicWarehouseType.getOperateTypeName());
    }
}
north-glass-erp/src/main/resources/application.yml
@@ -1,6 +1,6 @@
server:
  port: 8086
  port: 8080
spring:
@@ -10,22 +10,22 @@
      strict: false #设置严格模式,默认false不启动. 启动后在未匹配到指定数据源时候回抛出异常,不启动会使用默认数据源.
      datasource:
        user_info:
          url: jdbc:mysql://localhost:3306/erp_user_info?serverTimezone=GMT%2b8
          url: jdbc:mysql://10.153.19.150:3306/erp_user_info?serverTimezone=GMT%2b8
          username: root
          password: beibo.123/
          driver-class-name: com.mysql.cj.jdbc.Driver
        sd:
          url: jdbc:mysql://localhost:3306/sd?serverTimezone=GMT%2b8&allowMultiQueries=true
          url: jdbc:mysql://10.153.19.150:3306/sd?serverTimezone=GMT%2b8&allowMultiQueries=true
          username: root
          password: beibo.123/
          driver-class-name: com.mysql.cj.jdbc.Driver
        mm:
          url: jdbc:mysql://localhost:3306/mm?serverTimezone=GMT%2b8
          url: jdbc:mysql://10.153.19.150:3306/mm?serverTimezone=GMT%2b8
          username: root
          password: beibo.123/
          driver-class-name: com.mysql.cj.jdbc.Driver
        pp:
          url: jdbc:mysql://localhost:3306/pp?serverTimezone=GMT%2b8
          url: jdbc:mysql://10.153.19.150:3306/pp?serverTimezone=GMT%2b8
          username: root
          password: beibo.123/
          driver-class-name: com.mysql.cj.jdbc.Driver
north-glass-erp/src/main/resources/mapper/mm/BasicWarehouseType.xml
@@ -20,6 +20,26 @@
        select operate_type from mm.basic_warehouse_type where type regexp #{type};
    </select>
    <select id="getBasicWarehouseTypeAll" >
        select * from mm.basic_warehouse_type where type!='原片' and type!='辅料'  order by id desc;
    </select>
    <insert id="insertBasicWarehouse"  useGeneratedKeys="true"  >
        insert into mm.basic_warehouse_type (operate_type_name, operate_type, type, create_time
        )
        values (
                   #{operateTypeName} ,#{operateType},#{type},now()
               )
    </insert>
    <delete id="deleteBasicWarehouse"  >
        delete from mm.basic_warehouse_type where id=#{id}
    </delete>
    <update id="updateBasicWarehouse"  >
        update mm.basic_warehouse_type set operate_type_name=#{operateTypeName},create_time=now() where id=#{id}
    </update>
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -446,7 +446,9 @@
               fc.process_id,
               SUM( od.quantity) as quantity,
               SUM(od.gross_area) as gross_area,
               #{technologyNumber} as technologyNumber
               SUM(od.weight) as weight,
               #{technologyNumber} as technologyNumber,
               concat(fc.process_id,'/',#{technologyNumber}) as  processIdNumber
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
@@ -475,7 +477,6 @@
          and fc.technology_number = #{technologyNumber}
        group by fc.process_id, fc.order_number
        order by fc.order_number
        limit 15
    </select>
    <select id="getProcessList">
north-glass-erp/target/classes/application.yml
@@ -1,6 +1,6 @@
server:
  port: 8086
  port: 8080
spring:
@@ -10,22 +10,22 @@
      strict: false #设置严格模式,默认false不启动. 启动后在未匹配到指定数据源时候回抛出异常,不启动会使用默认数据源.
      datasource:
        user_info:
          url: jdbc:mysql://localhost:3306/erp_user_info?serverTimezone=GMT%2b8
          url: jdbc:mysql://10.153.19.150:3306/erp_user_info?serverTimezone=GMT%2b8
          username: root
          password: beibo.123/
          driver-class-name: com.mysql.cj.jdbc.Driver
        sd:
          url: jdbc:mysql://localhost:3306/sd?serverTimezone=GMT%2b8&allowMultiQueries=true
          url: jdbc:mysql://10.153.19.150:3306/sd?serverTimezone=GMT%2b8&allowMultiQueries=true
          username: root
          password: beibo.123/
          driver-class-name: com.mysql.cj.jdbc.Driver
        mm:
          url: jdbc:mysql://localhost:3306/mm?serverTimezone=GMT%2b8
          url: jdbc:mysql://10.153.19.150:3306/mm?serverTimezone=GMT%2b8
          username: root
          password: beibo.123/
          driver-class-name: com.mysql.cj.jdbc.Driver
        pp:
          url: jdbc:mysql://localhost:3306/pp?serverTimezone=GMT%2b8
          url: jdbc:mysql://10.153.19.150:3306/pp?serverTimezone=GMT%2b8
          username: root
          password: beibo.123/
          driver-class-name: com.mysql.cj.jdbc.Driver
north-glass-erp/target/classes/mapper/mm/BasicWarehouseType.xml
@@ -20,6 +20,26 @@
        select operate_type from mm.basic_warehouse_type where type regexp #{type};
    </select>
    <select id="getBasicWarehouseTypeAll" >
        select * from mm.basic_warehouse_type where type!='原片' and type!='辅料'  order by id desc;
    </select>
    <insert id="insertBasicWarehouse"  useGeneratedKeys="true"  >
        insert into mm.basic_warehouse_type (operate_type_name, operate_type, type, create_time
        )
        values (
                   #{operateTypeName} ,#{operateType},#{type},now()
               )
    </insert>
    <delete id="deleteBasicWarehouse"  >
        delete from mm.basic_warehouse_type where id=#{id}
    </delete>
    <update id="updateBasicWarehouse"  >
        update mm.basic_warehouse_type set operate_type_name=#{operateTypeName},create_time=now() where id=#{id}
    </update>
north-glass-erp/target/classes/mapper/pp/FolwCard.xml
@@ -446,7 +446,9 @@
               fc.process_id,
               SUM( od.quantity) as quantity,
               SUM(od.gross_area) as gross_area,
               #{technologyNumber} as technologyNumber
               SUM(od.weight) as weight,
               #{technologyNumber} as technologyNumber,
               concat(fc.process_id,'/',#{technologyNumber}) as  processIdNumber
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
@@ -475,7 +477,6 @@
          and fc.technology_number = #{technologyNumber}
        group by fc.process_id, fc.order_number
        order by fc.order_number
        limit 15
    </select>
    <select id="getProcessList">