From 04040c14d238807a7b0facb372d54b6a674cb95f Mon Sep 17 00:00:00 2001 From: ywyonui Date: Thu, 24 Jul 2025 19:37:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E4=BB=A3=E8=AF=BE=E6=95=99?= =?UTF-8?q?=E5=B8=88=E9=80=89=E6=8B=A9=EF=BC=8C=E5=87=86=E5=A4=87=E5=B0=81?= =?UTF-8?q?=E8=A3=85=E6=95=99=E5=B8=88=E9=80=89=E6=8B=A9=E5=99=A8=E7=9A=84?= =?UTF-8?q?=E6=89=A9=E5=B1=95=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pnpm-lock.yaml | 97 +++ src/api/base/common.ts | 27 + src/pages/components/JsPicker/index.vue | 217 ++++++ .../components/JsPickerPlus/TopTypePicker.vue | 76 ++ .../components/JsPickerPlus/ZwTypePicker.vue | 74 ++ src/pages/components/JsPickerPlus/index.vue | 652 ++++++++++++++++++ src/pages/components/KmPicker/index.vue | 74 ++ src/pages/components/NjPicker/index.vue | 74 ++ src/pages/components/ZwPicker/index.vue | 74 ++ .../view/hr/qj/components/jsQjDkEdit.vue | 191 +++-- .../view/routine/RengJiaoRengZhi/index.vue | 8 +- src/pages/view/routine/qd/selectTeachers.vue | 8 +- src/store/modules/common.ts | 70 ++ src/store/modules/user.ts | 2 + 14 files changed, 1563 insertions(+), 81 deletions(-) create mode 100644 src/api/base/common.ts create mode 100644 src/pages/components/JsPicker/index.vue create mode 100644 src/pages/components/JsPickerPlus/TopTypePicker.vue create mode 100644 src/pages/components/JsPickerPlus/ZwTypePicker.vue create mode 100644 src/pages/components/JsPickerPlus/index.vue create mode 100644 src/pages/components/KmPicker/index.vue create mode 100644 src/pages/components/NjPicker/index.vue create mode 100644 src/pages/components/ZwPicker/index.vue create mode 100644 src/store/modules/common.ts diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 47f2e15..3cd3276 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -74,6 +74,9 @@ importers: pinia-plugin-persist-uni: specifier: 1.2.0 version: 1.2.0(pinia@2.0.23(typescript@4.8.3)(vue@3.2.45))(vue@3.2.45) + qrcode: + specifier: ^1.5.3 + version: 1.5.4 uview-plus: specifier: 3.1.20 version: 3.1.20 @@ -111,6 +114,9 @@ importers: '@types/node': specifier: 18.11.15 version: 18.11.15 + '@types/qrcode': + specifier: ^1.5.5 + version: 1.5.5 '@types/uni-app': specifier: 1.4.4 version: 1.4.4 @@ -1322,6 +1328,9 @@ packages: '@types/prettier@2.7.3': resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==} + '@types/qrcode@1.5.5': + resolution: {integrity: sha512-CdfBi/e3Qk+3Z/fXYShipBT13OJ2fDO2Q2w5CIP5anLTLIndQG9z6P1cnm+8zCWSpm5dnxMFd/uREtb0EXuQzg==} + '@types/stack-utils@2.0.3': resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} @@ -1764,6 +1773,9 @@ packages: clipboard@2.0.11: resolution: {integrity: sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==} + cliui@6.0.0: + resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} + cliui@7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} @@ -1904,6 +1916,10 @@ packages: supports-color: optional: true + decamelize@1.2.0: + resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} + engines: {node: '>=0.10.0'} + decimal.js@10.5.0: resolution: {integrity: sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==} @@ -1944,6 +1960,9 @@ packages: resolution: {integrity: sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + dijkstrajs@1.0.3: + resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==} + dom-walk@0.1.2: resolution: {integrity: sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==} @@ -2965,6 +2984,10 @@ packages: resolution: {integrity: sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==} engines: {node: '>=4.0.0'} + pngjs@5.0.0: + resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==} + engines: {node: '>=10.13.0'} + postcss-import@14.1.0: resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} engines: {node: '>=10.0.0'} @@ -3062,6 +3085,11 @@ packages: resolution: {integrity: sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==} hasBin: true + qrcode@1.5.4: + resolution: {integrity: sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==} + engines: {node: '>=10.13.0'} + hasBin: true + qs@6.13.0: resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==} engines: {node: '>=0.6'} @@ -3126,6 +3154,9 @@ packages: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} + require-main-filename@2.0.0: + resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} + requires-port@1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} @@ -3245,6 +3276,9 @@ packages: resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} engines: {node: '>= 0.8.0'} + set-blocking@2.0.0: + resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} @@ -3682,6 +3716,9 @@ packages: resolution: {integrity: sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==} engines: {node: '>=10'} + which-module@2.0.1: + resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} + which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -3756,6 +3793,9 @@ packages: resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} engines: {node: '>=0.4'} + y18n@4.0.3: + resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} + y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -3767,10 +3807,18 @@ packages: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} + yargs-parser@18.1.3: + resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} + engines: {node: '>=6'} + yargs-parser@20.2.9: resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} engines: {node: '>=10'} + yargs@15.4.1: + resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} + engines: {node: '>=8'} + yargs@16.2.0: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} @@ -5617,6 +5665,10 @@ snapshots: '@types/prettier@2.7.3': {} + '@types/qrcode@1.5.5': + dependencies: + '@types/node': 18.11.15 + '@types/stack-utils@2.0.3': {} '@types/uni-app@1.4.4': @@ -6221,6 +6273,12 @@ snapshots: select: 1.1.2 tiny-emitter: 2.1.0 + cliui@6.0.0: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + cliui@7.0.4: dependencies: string-width: 4.2.3 @@ -6325,6 +6383,8 @@ snapshots: dependencies: ms: 2.1.3 + decamelize@1.2.0: {} + decimal.js@10.5.0: {} dedent@0.7.0: {} @@ -6351,6 +6411,8 @@ snapshots: diff-sequences@27.5.1: {} + dijkstrajs@1.0.3: {} + dom-walk@0.1.2: {} domexception@2.0.1: @@ -7582,6 +7644,8 @@ snapshots: pngjs@3.4.0: {} + pngjs@5.0.0: {} + postcss-import@14.1.0(postcss@8.5.5): dependencies: postcss: 8.5.5 @@ -7678,6 +7742,12 @@ snapshots: qrcode-terminal@0.12.0: {} + qrcode@1.5.4: + dependencies: + dijkstrajs: 1.0.3 + pngjs: 5.0.0 + yargs: 15.4.1 + qs@6.13.0: dependencies: side-channel: 1.1.0 @@ -7742,6 +7812,8 @@ snapshots: require-from-string@2.0.2: {} + require-main-filename@2.0.0: {} + requires-port@1.0.0: {} resolve-cwd@3.0.0: @@ -7864,6 +7936,8 @@ snapshots: transitivePeerDependencies: - supports-color + set-blocking@2.0.0: {} + setprototypeof@1.2.0: {} shebang-command@2.0.0: @@ -8288,6 +8362,8 @@ snapshots: tr46: 2.1.0 webidl-conversions: 6.1.0 + which-module@2.0.1: {} + which@2.0.2: dependencies: isexe: 2.0.0 @@ -8343,14 +8419,35 @@ snapshots: xtend@4.0.2: {} + y18n@4.0.3: {} + y18n@5.0.8: {} yallist@3.1.1: {} yaml@1.10.2: {} + yargs-parser@18.1.3: + dependencies: + camelcase: 5.3.1 + decamelize: 1.2.0 + yargs-parser@20.2.9: {} + yargs@15.4.1: + dependencies: + cliui: 6.0.0 + decamelize: 1.2.0 + find-up: 4.1.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + require-main-filename: 2.0.0 + set-blocking: 2.0.0 + string-width: 4.2.3 + which-module: 2.0.1 + y18n: 4.0.3 + yargs-parser: 18.1.3 + yargs@16.2.0: dependencies: cliui: 7.0.4 diff --git a/src/api/base/common.ts b/src/api/base/common.ts new file mode 100644 index 0000000..ff80cb2 --- /dev/null +++ b/src/api/base/common.ts @@ -0,0 +1,27 @@ +// 食堂巡查相关API接口 +import { get } from "@/utils/request"; + +// 所有年级 +export const njFindAll = async () => { + return await get("/api/nj/findAllNj"); +}; + +// 根据年级查询班级 +export const bjFindByNjId = async (params: any) => { + return await get("/api/nj/findByNjId", params); +}; + +// 所有教师 +export const jsFindAll = async () => { + return await get("/api/js/findAll"); +}; + +// 所有职务 +export const zwFindAllApi = async () => { + return await get("/api/zw/findAll"); +}; + +// 根据类型查询职务 +export const zwGetListByLxApi = async (params: any) => { + return await get("/api/zw/getListByLx", params); +}; \ No newline at end of file diff --git a/src/pages/components/JsPicker/index.vue b/src/pages/components/JsPicker/index.vue new file mode 100644 index 0000000..d36c1e3 --- /dev/null +++ b/src/pages/components/JsPicker/index.vue @@ -0,0 +1,217 @@ + + + + + \ No newline at end of file diff --git a/src/pages/components/JsPickerPlus/TopTypePicker.vue b/src/pages/components/JsPickerPlus/TopTypePicker.vue new file mode 100644 index 0000000..117435b --- /dev/null +++ b/src/pages/components/JsPickerPlus/TopTypePicker.vue @@ -0,0 +1,76 @@ + + + + + \ No newline at end of file diff --git a/src/pages/components/JsPickerPlus/ZwTypePicker.vue b/src/pages/components/JsPickerPlus/ZwTypePicker.vue new file mode 100644 index 0000000..34b6df1 --- /dev/null +++ b/src/pages/components/JsPickerPlus/ZwTypePicker.vue @@ -0,0 +1,74 @@ + + + + + \ No newline at end of file diff --git a/src/pages/components/JsPickerPlus/index.vue b/src/pages/components/JsPickerPlus/index.vue new file mode 100644 index 0000000..13053b5 --- /dev/null +++ b/src/pages/components/JsPickerPlus/index.vue @@ -0,0 +1,652 @@ + + + + + \ No newline at end of file diff --git a/src/pages/components/KmPicker/index.vue b/src/pages/components/KmPicker/index.vue new file mode 100644 index 0000000..34b6df1 --- /dev/null +++ b/src/pages/components/KmPicker/index.vue @@ -0,0 +1,74 @@ + + + + + \ No newline at end of file diff --git a/src/pages/components/NjPicker/index.vue b/src/pages/components/NjPicker/index.vue new file mode 100644 index 0000000..34b6df1 --- /dev/null +++ b/src/pages/components/NjPicker/index.vue @@ -0,0 +1,74 @@ + + + + + \ No newline at end of file diff --git a/src/pages/components/ZwPicker/index.vue b/src/pages/components/ZwPicker/index.vue new file mode 100644 index 0000000..34b6df1 --- /dev/null +++ b/src/pages/components/ZwPicker/index.vue @@ -0,0 +1,74 @@ + + + + + \ No newline at end of file diff --git a/src/pages/view/hr/qj/components/jsQjDkEdit.vue b/src/pages/view/hr/qj/components/jsQjDkEdit.vue index b93a02c..53a5ef3 100644 --- a/src/pages/view/hr/qj/components/jsQjDkEdit.vue +++ b/src/pages/view/hr/qj/components/jsQjDkEdit.vue @@ -1,15 +1,49 @@