From 324244fa11705886e34225f856c11b4250ca1fec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Mon, 20 Jul 2026 12:07:09 +0800 Subject: [PATCH] =?UTF-8?q?fix(build):=20=E4=BF=AE=E5=A4=8D=E6=89=93?= =?UTF-8?q?=E5=8C=85=E8=BF=87=E7=A8=8B=E4=B8=AD=E7=9A=84=E4=BE=9D=E8=B5=96?= =?UTF-8?q?=E5=92=8C=E5=AF=BC=E5=85=A5=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 安装缺失的 sass 依赖解决预处理器报错问题 - 安装 element-plus 组件库依赖,修复相关页面构建失败 - 修正 customerLead 页面错误导入的 listUser 为 listUsers - 确认修复后 pnpm build 成功,产物正常生成 - 更新 package.json 和 pnpm-lock.yaml,引入新依赖并锁定版本 --- .workbuddy/memory/2026-07-20.md | 16 +- package.json | 2 + pnpm-lock.yaml | 366 ++++++++++++++++++++++++++- src/views/cms/customerLead/index.vue | 4 +- 4 files changed, 374 insertions(+), 14 deletions(-) diff --git a/.workbuddy/memory/2026-07-20.md b/.workbuddy/memory/2026-07-20.md index 4e7303c..98cacea 100644 --- a/.workbuddy/memory/2026-07-20.md +++ b/.workbuddy/memory/2026-07-20.md @@ -21,4 +21,18 @@ ### 验证 - 所有 import 符号在 mp-vue 中均存在(`@/router`、`QrCodeStatusResponse`、`QrLogin` 组件、`configWebsiteField` 等)。 - 两边 `User` 模型字段一致(含 `isSuperAdmin`、`templateId`),表单初值与 `LoginForm` 类型匹配。 -- 已触发 `vue-tsc --noEmit` 全量类型检查(后台任务)确认无编译错误。 +- 全量类型检查(`vue-tsc --noEmit`)报 1178 个错误,但均出现在我未改动的文件(如 system/cache、house、shop/shopGoods 等),我改动的 4 个文件均未出现在错误列表中。 +- 实际构建 `pnpm build` 已通过。 + +## 修复打包报错(sass / element-plus / listUser) + +用户反馈打包报错 `Preprocessor dependency "sass" not found`,逐步修复如下: + +1. 安装 `sass` 作为 devDependency:`pnpm add -D sass`。 +2. 继续构建发现 `element-plus` 未安装(`src/views/cms/customerLead/index.vue` 与 `src/views/cms/recommendation/index.vue` 均导入)。执行 `pnpm add element-plus`,安装到 dependencies(版本 2.14.3)。 +3. 继续构建发现 `customerLead/index.vue` 中导入 `listUser`(拼写错误),实际 API 导出为 `listUsers`。修正导入和调用处。 +4. 最终 `pnpm build` 成功完成(`✓ 9738 modules transformed`,`dist` 产物正常生成)。 + +### 本次修复涉及文件 +- `package.json` / `pnpm-lock.yaml` / `node_modules`(新增 `sass`、`element-plus` 及 `@typescript-eslint/eslint-plugin` 等依赖) +- `src/views/cms/customerLead/index.vue`(`listUser` → `listUsers`) diff --git a/package.json b/package.json index 6f04eed..8d92b45 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "echarts": "^5.3.3", "echarts-wordcloud": "^2.0.0", "ele-admin-pro": "^1.10.1", + "element-plus": "^2.14.3", "exceljs": "^4.3.0", "file-saver": "^2.0.5", "github-markdown-css": "^5.1.0", @@ -78,6 +79,7 @@ "prettier": "^2.7.1", "rimraf": "^3.0.2", "rollup-plugin-visualizer": "^5.9.2", + "sass": "^1.101.0", "tailwindcss": "^3.4.6", "terser": "^5.15.0", "typescript": "^4.8.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9923994..3ed65c9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -68,6 +68,9 @@ importers: ele-admin-pro: specifier: ^1.10.1 version: 1.11.1(ant-design-vue@3.2.20(vue@3.5.3(typescript@4.9.5)))(vue@3.5.3(typescript@4.9.5)) + element-plus: + specifier: ^2.14.3 + version: 2.14.3(vue@3.5.3(typescript@4.9.5)) exceljs: specifier: ^4.3.0 version: 4.4.0 @@ -161,10 +164,10 @@ importers: version: 5.62.0(eslint@8.57.1)(typescript@4.9.5) '@vitejs/plugin-legacy': specifier: ^2.0.1 - version: 2.3.1(terser@5.44.1)(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1)) + version: 2.3.1(terser@5.44.1)(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1)) '@vitejs/plugin-vue': specifier: ^3.0.3 - version: 3.2.0(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1))(vue@3.5.3(typescript@4.9.5)) + version: 3.2.0(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1))(vue@3.5.3(typescript@4.9.5)) '@vue/compiler-sfc': specifier: ^3.2.38 version: 3.5.24 @@ -201,6 +204,9 @@ importers: rollup-plugin-visualizer: specifier: ^5.9.2 version: 5.14.0(rollup@2.79.2) + sass: + specifier: ^1.101.0 + version: 1.101.0 tailwindcss: specifier: ^3.4.6 version: 3.4.18 @@ -215,10 +221,10 @@ importers: version: 0.22.12(@babel/parser@7.28.5)(rollup@2.79.2)(vue@3.5.3(typescript@4.9.5)) vite: specifier: ^3.0.9 - version: 3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1) + version: 3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1) vite-plugin-compression: specifier: ^0.5.1 - version: 0.5.1(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1)) + version: 0.5.1(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1)) vue-eslint-parser: specifier: ^9.0.3 version: 9.4.3(eslint@8.57.1) @@ -455,6 +461,15 @@ packages: resolution: {integrity: sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==} engines: {node: '>=10'} + '@ctrl/tinycolor@4.2.0': + resolution: {integrity: sha512-kzyuwOAQnXJNLS9PSyrk0CWk35nWJW/zl/6KvnTBMFK65gm7U1/Z5BqjxeapjZCIhQcM/DsrEmcbRwDyXyXK4A==} + engines: {node: '>=14'} + + '@element-plus/icons-vue@2.3.2': + resolution: {integrity: sha512-OzIuTaIfC8QXEPmJvB4Y4kw34rSXdCJzxcD1kFStBvr8bK6X1zQAYDo0CNMjojnfTqRQCJ0I7prlErcoRiET2A==} + peerDependencies: + vue: ^3.2.0 + '@esbuild/android-arm@0.15.18': resolution: {integrity: sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==} engines: {node: '>=12'} @@ -491,6 +506,15 @@ packages: '@fast-csv/parse@4.3.6': resolution: {integrity: sha512-uRsLYksqpbDmWaSmzvJcuApSEe38+6NQZBUsuAyMZKqHxH0g1wcJgsKUvN3WC8tewaqFjBMMGrkHmC+T7k8LvA==} + '@floating-ui/core@1.8.0': + resolution: {integrity: sha512-0CIZ5itps/8x7BG8dEIhs53BvCUH2PCoogtakwRTut+Arm58sJooJ0AuZhLw2HJYIR5cMLNPBSS728sPho2khQ==} + + '@floating-ui/dom@1.8.0': + resolution: {integrity: sha512-yXSrzeHZBTZadLOlfyhCkJHNeLJnHRnRInwdZ40L7ZiaAtrBwoYlsDrX3v5zB1Utk7CLfzcOVnVVWoXEky7Ceg==} + + '@floating-ui/utils@0.2.12': + resolution: {integrity: sha512-HpCo8tmWzLVad5s2d19EhAz5zqrrQ6s69qd6moPMQvkOuSwDT1YgRfWSVuc4ennqrgv3OHppiOGMQ7oC13yIww==} + '@humanwhocodes/config-array@0.13.0': resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} engines: {node: '>=10.10.0'} @@ -598,6 +622,94 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@parcel/watcher-android-arm64@2.5.6': + resolution: {integrity: sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [android] + + '@parcel/watcher-darwin-arm64@2.5.6': + resolution: {integrity: sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [darwin] + + '@parcel/watcher-darwin-x64@2.5.6': + resolution: {integrity: sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [darwin] + + '@parcel/watcher-freebsd-x64@2.5.6': + resolution: {integrity: sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [freebsd] + + '@parcel/watcher-linux-arm-glibc@2.5.6': + resolution: {integrity: sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + libc: [glibc] + + '@parcel/watcher-linux-arm-musl@2.5.6': + resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + libc: [musl] + + '@parcel/watcher-linux-arm64-glibc@2.5.6': + resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@parcel/watcher-linux-arm64-musl@2.5.6': + resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@parcel/watcher-linux-x64-glibc@2.5.6': + resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@parcel/watcher-linux-x64-musl@2.5.6': + resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + libc: [musl] + + '@parcel/watcher-win32-arm64@2.5.6': + resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [win32] + + '@parcel/watcher-win32-ia32@2.5.6': + resolution: {integrity: sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==} + engines: {node: '>= 10.0.0'} + cpu: [ia32] + os: [win32] + + '@parcel/watcher-win32-x64@2.5.6': + resolution: {integrity: sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [win32] + + '@parcel/watcher@2.5.6': + resolution: {integrity: sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==} + engines: {node: '>= 10.0.0'} + '@popperjs/core@2.11.8': resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} @@ -616,6 +728,9 @@ packages: '@socket.io/component-emitter@3.1.2': resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} + '@sxzz/popperjs-es@2.11.8': + resolution: {integrity: sha512-wOwESXvvED3S8xBmcPWHs2dUuzrE4XiZeFu7e1hROIJkm02a49N120pmOXxY33sBb6hArItm5W5tcg1cBtV+HQ==} + '@types/codemirror@5.60.17': resolution: {integrity: sha512-AZq2FIsUHVMlp7VSe2hTfl5w4pcUkoFkM3zVsRKsn1ca8CXRDYvnin04+HP2REkwsxemuHqvDofdlhUWNpbwfw==} @@ -703,6 +818,9 @@ packages: '@types/lodash@4.17.20': resolution: {integrity: sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==} + '@types/lodash@4.17.24': + resolution: {integrity: sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==} + '@types/markdown-it@14.1.2': resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==} @@ -745,6 +863,9 @@ packages: '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} + '@types/web-bluetooth@0.0.21': + resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==} + '@typescript-eslint/eslint-plugin@5.62.0': resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -898,6 +1019,19 @@ packages: '@vue/shared@3.5.3': resolution: {integrity: sha512-Jp2v8nylKBT+PlOUjun2Wp/f++TfJVFjshLzNtJDdmFJabJa7noGMncqXRM1vXGX+Yo2V7WykQFNxusSim8SCA==} + '@vueuse/core@14.3.0': + resolution: {integrity: sha512-aHfz47g0ZhMtTVHmIzMVpJy8ePhhOy68GY5bv110+5DVtZ+W7BsOx+m61UNQqfrWyPztIHIanWa3E2tib3NFIw==} + peerDependencies: + vue: ^3.5.0 + + '@vueuse/metadata@14.3.0': + resolution: {integrity: sha512-BwxmbAzwAVF50+MW57GXOUEV61nFBGnlBvrTqj49PqWJu3uw7hdu72ztXeZ33RdZtDY6kO+bfCAE1PCn88Tktw==} + + '@vueuse/shared@14.3.0': + resolution: {integrity: sha512-bZpge9eSXwa4ToSiqJ7j6KRwhAsneMFoSz3LMWKQDkqimm3D/tbFlrklrs/IOqC8tEcYmXQZJ6N0UrjhBirVCg==} + peerDependencies: + vue: ^3.5.0 + '@wecom/jssdk@1.4.5': resolution: {integrity: sha512-1SSmcDUid7QOQNNFaM4d884NXJQYuoO+oLZtM9TRO5uMXYj2s69hmuAoPUr3D3br6VDgv4H+tbIG5A5A+uB9lA==} @@ -1131,6 +1265,10 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} + chokidar@5.0.0: + resolution: {integrity: sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==} + engines: {node: '>= 20.19.0'} + cliui@6.0.0: resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} @@ -1358,6 +1496,9 @@ packages: dayjs@1.11.19: resolution: {integrity: sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==} + dayjs@1.11.21: + resolution: {integrity: sha512-98IT+HOahAisibz/yjKbzuOBwYcjJ7BCLPzARyHiyEBmRz4fatF+KPJszEHXsGYjUG234aH/cOjW1wwTbKUZlA==} + debug@4.3.7: resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} engines: {node: '>=6.0'} @@ -1406,6 +1547,10 @@ packages: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} @@ -1474,6 +1619,11 @@ packages: electron-to-chromium@1.5.259: resolution: {integrity: sha512-I+oLXgpEJzD6Cwuwt1gYjxsDmu/S/Kd41mmLA3O+/uH2pFRO/DvOjUyGozL8j3KeLV6WyZ7ssPwELMsXCcsJAQ==} + element-plus@2.14.3: + resolution: {integrity: sha512-pJcvxcpZjYruNzuJhAeVwnbYjfNgzBKnWHwSVEhwzM2/kcLI3brzmtIBxtPqd4hQWJfD1PRnjoc1WipLw2eBGg==} + peerDependencies: + vue: ^3.3.7 + emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -2043,6 +2193,9 @@ packages: immediate@3.0.6: resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} + immutable@5.1.9: + resolution: {integrity: sha512-m8nVez3rwrgmWxtLMt1ZYXB2Lv7OKYn/disyxAlSDYAlKSlFoPPfIAmAM/M5xqL4m4C/wAPw7S2/CNaUii1Hxg==} + import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} @@ -2232,6 +2385,16 @@ packages: lodash-es@4.17.21: resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + lodash-es@4.18.1: + resolution: {integrity: sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==} + + lodash-unified@1.0.3: + resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==} + peerDependencies: + '@types/lodash-es': '*' + lodash: '*' + lodash-es: '*' + lodash.defaults@4.2.0: resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} @@ -2278,6 +2441,9 @@ packages: lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + lodash@4.18.1: + resolution: {integrity: sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==} + longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -2385,6 +2551,9 @@ packages: medium-zoom@1.1.0: resolution: {integrity: sha512-ewyDsp7k4InCUp3jRmwHBRFGyjBimKps/AJLjRSox+2q/2H4p/PNpQf+pwONWlJiOudkBXtbdmVbFjqyybfTmQ==} + memoize-one@6.0.0: + resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==} + merge-descriptors@1.0.3: resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} @@ -2555,6 +2724,9 @@ packages: next-tick@1.1.0: resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} + node-addon-api@7.1.1: + resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} + node-hex@1.0.1: resolution: {integrity: sha512-iwpZdvW6Umz12ICmu9IYPRxg0tOLGmU3Tq2tKetejCj3oZd7b2nUXwP3a7QA5M9glWy8wlPS1G3RwM/CdsUbdQ==} engines: {node: '>=8.0.0'} @@ -2570,6 +2742,9 @@ packages: resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} engines: {node: '>=0.10.0'} + normalize-wheel-es@1.2.0: + resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==} + nprogress@0.2.0: resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==} @@ -2822,6 +2997,10 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} + readdirp@5.0.0: + resolution: {integrity: sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==} + engines: {node: '>= 20.19.0'} + regenerator-runtime@0.13.11: resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} @@ -2919,6 +3098,11 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + sass@1.101.0: + resolution: {integrity: sha512-OL3GoQyoUdDt843DpVmDO6y2k1sc5IhUDSpu8XucEI+35neq5QivZ1iuegnpraEVTJXlQGK1gl27zKcTLEPbQw==} + engines: {node: '>=20.19.0'} + hasBin: true + sax@1.4.3: resolution: {integrity: sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==} @@ -3318,6 +3502,9 @@ packages: terser: optional: true + vue-component-type-helpers@3.3.7: + resolution: {integrity: sha512-Skkhw9agYSgsWqv7bxSOGJZa9SaiJbZVGdXuFWnrzKaQYHnw9qbjD630rw6RyMqDbp54nfLCLw5SZA55if7JLg==} + vue-demi@0.13.11: resolution: {integrity: sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==} engines: {node: '>=12'} @@ -4062,6 +4249,12 @@ snapshots: '@ctrl/tinycolor@3.6.1': {} + '@ctrl/tinycolor@4.2.0': {} + + '@element-plus/icons-vue@2.3.2(vue@3.5.3(typescript@4.9.5))': + dependencies: + vue: 3.5.3(typescript@4.9.5) + '@esbuild/android-arm@0.15.18': optional: true @@ -4110,6 +4303,17 @@ snapshots: lodash.isundefined: 3.0.1 lodash.uniq: 4.5.0 + '@floating-ui/core@1.8.0': + dependencies: + '@floating-ui/utils': 0.2.12 + + '@floating-ui/dom@1.8.0': + dependencies: + '@floating-ui/core': 1.8.0 + '@floating-ui/utils': 0.2.12 + + '@floating-ui/utils@0.2.12': {} + '@humanwhocodes/config-array@0.13.0': dependencies: '@humanwhocodes/object-schema': 2.0.3 @@ -4260,6 +4464,67 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.1 + '@parcel/watcher-android-arm64@2.5.6': + optional: true + + '@parcel/watcher-darwin-arm64@2.5.6': + optional: true + + '@parcel/watcher-darwin-x64@2.5.6': + optional: true + + '@parcel/watcher-freebsd-x64@2.5.6': + optional: true + + '@parcel/watcher-linux-arm-glibc@2.5.6': + optional: true + + '@parcel/watcher-linux-arm-musl@2.5.6': + optional: true + + '@parcel/watcher-linux-arm64-glibc@2.5.6': + optional: true + + '@parcel/watcher-linux-arm64-musl@2.5.6': + optional: true + + '@parcel/watcher-linux-x64-glibc@2.5.6': + optional: true + + '@parcel/watcher-linux-x64-musl@2.5.6': + optional: true + + '@parcel/watcher-win32-arm64@2.5.6': + optional: true + + '@parcel/watcher-win32-ia32@2.5.6': + optional: true + + '@parcel/watcher-win32-x64@2.5.6': + optional: true + + '@parcel/watcher@2.5.6': + dependencies: + detect-libc: 2.1.2 + is-glob: 4.0.3 + node-addon-api: 7.1.1 + picomatch: 4.0.3 + optionalDependencies: + '@parcel/watcher-android-arm64': 2.5.6 + '@parcel/watcher-darwin-arm64': 2.5.6 + '@parcel/watcher-darwin-x64': 2.5.6 + '@parcel/watcher-freebsd-x64': 2.5.6 + '@parcel/watcher-linux-arm-glibc': 2.5.6 + '@parcel/watcher-linux-arm-musl': 2.5.6 + '@parcel/watcher-linux-arm64-glibc': 2.5.6 + '@parcel/watcher-linux-arm64-musl': 2.5.6 + '@parcel/watcher-linux-x64-glibc': 2.5.6 + '@parcel/watcher-linux-x64-musl': 2.5.6 + '@parcel/watcher-win32-arm64': 2.5.6 + '@parcel/watcher-win32-ia32': 2.5.6 + '@parcel/watcher-win32-x64': 2.5.6 + optional: true + '@popperjs/core@2.11.8': {} '@rollup/pluginutils@5.3.0(rollup@2.79.2)': @@ -4277,6 +4542,8 @@ snapshots: '@socket.io/component-emitter@3.1.2': {} + '@sxzz/popperjs-es@2.11.8': {} + '@types/codemirror@5.60.17': dependencies: '@types/tern': 0.23.9 @@ -4353,6 +4620,8 @@ snapshots: '@types/lodash@4.17.20': {} + '@types/lodash@4.17.24': {} + '@types/markdown-it@14.1.2': dependencies: '@types/linkify-it': 5.0.0 @@ -4394,6 +4663,8 @@ snapshots: '@types/unist@2.0.11': {} + '@types/web-bluetooth@0.0.21': {} + '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@4.9.5))(eslint@8.57.1)(typescript@4.9.5)': dependencies: '@eslint-community/regexpp': 4.12.2 @@ -4484,7 +4755,7 @@ snapshots: '@vavt/util@2.1.1': {} - '@vitejs/plugin-legacy@2.3.1(terser@5.44.1)(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1))': + '@vitejs/plugin-legacy@2.3.1(terser@5.44.1)(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1))': dependencies: '@babel/standalone': 7.28.5 core-js: 3.47.0 @@ -4492,11 +4763,11 @@ snapshots: regenerator-runtime: 0.13.11 systemjs: 6.15.1 terser: 5.44.1 - vite: 3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1) + vite: 3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1) - '@vitejs/plugin-vue@3.2.0(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1))(vue@3.5.3(typescript@4.9.5))': + '@vitejs/plugin-vue@3.2.0(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1))(vue@3.5.3(typescript@4.9.5))': dependencies: - vite: 3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1) + vite: 3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1) vue: 3.5.3(typescript@4.9.5) '@volar/code-gen@0.40.13': @@ -4625,6 +4896,19 @@ snapshots: '@vue/shared@3.5.3': {} + '@vueuse/core@14.3.0(vue@3.5.3(typescript@4.9.5))': + dependencies: + '@types/web-bluetooth': 0.0.21 + '@vueuse/metadata': 14.3.0 + '@vueuse/shared': 14.3.0(vue@3.5.3(typescript@4.9.5)) + vue: 3.5.3(typescript@4.9.5) + + '@vueuse/metadata@14.3.0': {} + + '@vueuse/shared@14.3.0(vue@3.5.3(typescript@4.9.5))': + dependencies: + vue: 3.5.3(typescript@4.9.5) + '@wecom/jssdk@1.4.5': {} acorn-jsx@5.3.2(acorn@8.15.0): @@ -4933,6 +5217,10 @@ snapshots: optionalDependencies: fsevents: 2.3.3 + chokidar@5.0.0: + dependencies: + readdirp: 5.0.0 + cliui@6.0.0: dependencies: string-width: 4.2.3 @@ -5144,6 +5432,8 @@ snapshots: dayjs@1.11.19: {} + dayjs@1.11.21: {} + debug@4.3.7: dependencies: ms: 2.1.3 @@ -5172,6 +5462,9 @@ snapshots: destroy@1.2.0: {} + detect-libc@2.1.2: + optional: true + didyoumean@1.2.2: {} diff@5.2.0: {} @@ -5238,6 +5531,25 @@ snapshots: electron-to-chromium@1.5.259: {} + element-plus@2.14.3(vue@3.5.3(typescript@4.9.5)): + dependencies: + '@ctrl/tinycolor': 4.2.0 + '@element-plus/icons-vue': 2.3.2(vue@3.5.3(typescript@4.9.5)) + '@floating-ui/dom': 1.8.0 + '@popperjs/core': '@sxzz/popperjs-es@2.11.8' + '@types/lodash': 4.17.24 + '@types/lodash-es': 4.17.12 + '@vueuse/core': 14.3.0(vue@3.5.3(typescript@4.9.5)) + async-validator: 4.2.5 + dayjs: 1.11.21 + lodash: 4.18.1 + lodash-es: 4.18.1 + lodash-unified: 1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.18.1)(lodash@4.18.1) + memoize-one: 6.0.0 + normalize-wheel-es: 1.2.0 + vue: 3.5.3(typescript@4.9.5) + vue-component-type-helpers: 3.3.7 + emoji-regex@8.0.0: {} end-of-stream@1.4.5: @@ -5846,6 +6158,8 @@ snapshots: immediate@3.0.6: {} + immutable@5.1.9: {} + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 @@ -6010,6 +6324,14 @@ snapshots: lodash-es@4.17.21: {} + lodash-es@4.18.1: {} + + lodash-unified@1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.18.1)(lodash@4.18.1): + dependencies: + '@types/lodash-es': 4.17.12 + lodash: 4.18.1 + lodash-es: 4.18.1 + lodash.defaults@4.2.0: {} lodash.difference@4.5.0: {} @@ -6040,6 +6362,8 @@ snapshots: lodash@4.17.21: {} + lodash@4.18.1: {} + longest-streak@3.1.0: {} loose-envify@1.4.0: @@ -6231,6 +6555,8 @@ snapshots: medium-zoom@1.1.0: {} + memoize-one@6.0.0: {} + merge-descriptors@1.0.3: {} merge2@1.4.1: {} @@ -6488,6 +6814,9 @@ snapshots: next-tick@1.1.0: {} + node-addon-api@7.1.1: + optional: true + node-hex@1.0.1: {} node-releases@2.0.27: {} @@ -6496,6 +6825,8 @@ snapshots: normalize-range@0.1.2: {} + normalize-wheel-es@1.2.0: {} + nprogress@0.2.0: {} nth-check@2.1.1: @@ -6714,6 +7045,8 @@ snapshots: dependencies: picomatch: 2.3.1 + readdirp@5.0.0: {} + regenerator-runtime@0.13.11: {} rehype-highlight@6.0.0: @@ -6821,6 +7154,14 @@ snapshots: safer-buffer@2.1.2: {} + sass@1.101.0: + dependencies: + chokidar: 5.0.0 + immutable: 5.1.9 + source-map-js: 1.2.1 + optionalDependencies: + '@parcel/watcher': 2.5.6 + sax@1.4.3: {} saxes@5.0.1: @@ -7258,16 +7599,16 @@ snapshots: unist-util-stringify-position: 3.0.3 vfile-message: 3.1.4 - vite-plugin-compression@0.5.1(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1)): + vite-plugin-compression@0.5.1(vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1)): dependencies: chalk: 4.1.2 debug: 4.4.3 fs-extra: 10.1.0 - vite: 3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1) + vite: 3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1) transitivePeerDependencies: - supports-color - vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(terser@5.44.1): + vite@3.2.11(@types/node@18.19.130)(less@4.4.2)(sass@1.101.0)(terser@5.44.1): dependencies: esbuild: 0.15.18 postcss: 8.5.6 @@ -7277,8 +7618,11 @@ snapshots: '@types/node': 18.19.130 fsevents: 2.3.3 less: 4.4.2 + sass: 1.101.0 terser: 5.44.1 + vue-component-type-helpers@3.3.7: {} + vue-demi@0.13.11(vue@3.5.3(typescript@4.9.5)): dependencies: vue: 3.5.3(typescript@4.9.5) diff --git a/src/views/cms/customerLead/index.vue b/src/views/cms/customerLead/index.vue index f8e0383..6b3f75b 100644 --- a/src/views/cms/customerLead/index.vue +++ b/src/views/cms/customerLead/index.vue @@ -337,7 +337,7 @@ import { LeadSourceOptions, FollowTypeOptions } from '@/api/cms/customerLead/model'; -import { listUser } from '@/api/system/user'; +import { listUsers } from '@/api/system/user'; const loading = ref(false); const tableData = ref([]); @@ -461,7 +461,7 @@ async function loadStatistics() { // 加载业务员列表 async function loadSalesmanList() { try { - const result = await listUser({ type: 1, pageSize: 100 }); + const result = await listUsers({ type: 1, pageSize: 100 }); salesmanList.value = result.list || []; } catch (error) { console.error('加载业务员列表失败', error);