Commit Graph

5157 Commits (d0cd93de5ad2437bebff0b578b29cfaeec22484d)

Author SHA1 Message Date
DevDengChao c4908548a1 feat(cropper): upgrade cropperjs from v1 to v2
cropperjs v2 is a complete rewrite using Web Components architecture.

- Cropper.vue: rewrite to use v2 API
  - `new Cropper(img, { container })` with Web Components template
  - `selection.$toCanvas()` (async) replaces `cropper.getCroppedCanvas()`
  - Selection `change` event replaces `crop`/`cropmove` callbacks
  - CropperImage `load` event replaces `ready` callback
- CopperModal.vue: update toolbar handlers
  - `cropperImage.$rotate()` replaces `cropper.rotate()`
  - `cropperImage.$zoom()` replaces `cropper.zoom()`
  - `cropperImage.$scale()` replaces `cropper.scaleX/Y()`
  - `cropperImage.$resetTransform()` + `selection.$reset()` replaces `cropper.reset()`
- types.ts: replace `Cropper.Data` with inline type (v2 has no Data type)
- Remove v1 CSS import (v2 uses shadow DOM styles)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 13:37:34 +08:00
YunaiV e275ef417e feat(mes): 添加 SN 码生成、查询和导出功能
新增 SN 码生成、分页查询和批量删除的 API 接口,支持导出 SN 码分组和明细为 Excel 文件。实现了前端页面的搜索、生成和导出功能,提升了用户操作的便捷性。
2026-03-05 13:36:35 +08:00
DevDengChao 2520de56b4 refactor(icon): replace deprecated @iconify/iconify with @iconify/vue
- Remove @iconify/iconify (deprecated), @purge-icons/generated, vite-plugin-purge-icons
- Add @iconify/vue which uses @iconify/utils iconToSVG internally
- Rewrite Icon.vue to use @iconify/vue Icon component instead of manual DOM manipulation
- Pre-load ep/fa/fa-solid icon sets via addCollection for offline support
- Other icon sets (ion, mdi, heroicons, etc.) load from Iconify API on demand
- Remove PurgeIcons() from Vite plugin config
- Verified: all 22 icons on login page render correctly as SVGs

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 12:26:12 +08:00
DevDengChao 860d2c0b29 chore(deps): minor updates for bpmn-js and purge-icons
- bpmn-js 18.12.0 → 18.13.0
- bpmn-js-properties-panel 5.52.1 → 5.53.0
- @purge-icons/generated 0.9.0 → 0.10.0

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 11:22:25 +08:00
DevDengChao 53a1024c11 chore(deps): patch updates for UnoCSS ecosystem (66.6.x)
- unocss 66.6.2 → 66.6.5
- @unocss/eslint-config 66.6.3 → 66.6.5
- @unocss/eslint-plugin 66.6.3 → 66.6.5
- @unocss/transformer-variant-group 66.6.3 → 66.6.5

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 11:19:42 +08:00
DevDengChao 037b465a64 chore(deps): patch updates for toolchain (commitlint, lint-staged, postcss, iconify/json)
- @commitlint/cli 20.4.2 → 20.4.3
- @commitlint/config-conventional 20.4.2 → 20.4.3
- lint-staged 16.3.1 → 16.3.2
- postcss 8.5.6 → 8.5.8
- @iconify/json 2.2.444 → 2.2.446

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 11:17:06 +08:00
YunaiV 15e462b2d0 feat(mes): 添加编码规则分段详情查询 API 2026-03-05 01:23:22 +08:00
YunaiV 78f7110770 feat(mes): 更新 MES 编码相关的 API 路径并添加编码规则分段功能 2026-03-04 23:55:26 +08:00
YunaiV 2e87bf55b5 feat(mes): 添加外协发料单数量校验功能
新增校验接口,确保外协发料单每行明细数量之和与行发料数量一致。此功能提升了数据准确性,避免了潜在的发料错误。
2026-03-04 09:59:33 +08:00
YunaiV ce14a5ae6d feat(mes): 添加取消外协发料单功能
实现取消外协发料单的接口,支持在特定状态下取消发料单。新增相关的业务逻辑和错误处理,确保只有在允许的状态下才能执行取消操作。
2026-03-04 08:49:00 +08:00
YunaiV 05aca5904c feat(mes): 添加外协发料单状态管理功能
新增提交到待拣货、执行拣货和完成外协发料出库的功能,优化了状态管理逻辑,确保发料单在不同状态下的操作流程更加清晰和安全。
2026-03-04 01:40:33 +08:00
YunaiV 4b1db07af0 feat(mes): 添加外协入库明细的增删改查功能
实现外协入库明细的创建、更新、删除和查询功能,增强系统对外协入库明细的管理能力。新增相关的请求和响应 VO,确保数据的有效性和完整性。
2026-03-03 22:52:47 +08:00
YunaiV 2efd2ce442 feat(mes): 添加外协入库单行的请求和响应 VO 及相关控制器功能 2026-03-03 21:53:17 +08:00
YunaiV d1bd19200f feat(mes): 添加外协入库单及行相关功能和请求响应 VO 2026-03-03 20:41:21 +08:00
YunaiV 63f28ba4c3 feat(mes): 添加外协发料单行及明细相关功能和请求响应 VO 2026-03-03 20:17:24 +08:00
YunaiV e6261273d4 feat(mes): 添加杂项入库单行分页功能及明细服务实现 2026-03-03 19:52:54 +08:00
YunaiV 8138e9fa93 feat(mes): 更新杂项类型为整数并添加明细服务
将杂项类型字段从字符串更改为整数,以支持新的枚举类型。同时,新增杂项出库明细的服务接口和实现,提供对明细的增删改查功能,提升系统的灵活性和可维护性。
2026-03-03 19:11:48 +08:00
YunaiV 8948a76f63 feat(mes): 添加杂项入库单及行相关请求和响应 VO 2026-03-03 14:05:05 +08:00
YunaiV 16394f3f94 feat(mes): 添加杂项出库单类型及状态枚举支持
新增杂项出库单类型和状态枚举,更新相关接口和前端表单以支持业务类型选择。确保系统能够正确处理杂项出库单的状态和类型,提高用户体验和系统的灵活性。
2026-03-03 12:51:32 +08:00
YunaiV efa794d2ab feat(mes): 添加杂项出库单及行相关功能
新增杂项出库单及行的请求和响应对象,更新相关的接口和枚举,支持杂项出库单的创建、修改、删除和查询功能。优化了相关的业务逻辑和数据结构,以提升系统的可维护性和扩展性。
2026-03-03 11:49:19 +08:00
DevDengChao ac6097aa9a fix: resolve ESLint 10 + eslint-plugin-vue 10 rule compat for dev server
Disable rules that are new/stricter in eslint-plugin-vue 10 and
typescript-eslint 8+ which would block dev server rendering via
vite-plugin-eslint2:
- vue/no-ref-as-operand, vue/no-mutating-props,
  vue/no-side-effects-in-computed-properties
- @typescript-eslint/no-unused-expressions, no-unsafe-function-type,
  no-wrapper-object-types, no-this-alias, no-empty-object-type
- Ignore auto-generated src/types/auto-components.d.ts
- Fix hasPermi.ts short-circuit expression

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 01:00:29 +08:00
DevDengChao cb5f0fb3f0 fix(deps): restore @iconify/iconify required by @purge-icons/generated
Re-added @iconify/iconify as runtime dependency — it's imported by
@purge-icons/generated which is used in src/plugins/svgIcon/index.ts.
Also reverted @purge-icons/generated 0.10 back to 0.9 (both versions
have the same @iconify/iconify import).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 20:56:06 +08:00
DevDengChao 49f0fb06f4 chore(deps): BPMN ecosystem upgrade and cleanup (Phase D)
- diagram-js 12 → 15, min-dash 4 → 5
- Remove unused fast-xml-parser (replaced by steady-xml)
- @purge-icons/generated 0.9 → 0.10

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 20:50:46 +08:00
DevDengChao c0845eae75 chore(deps): medium-risk major upgrades (Phase C)
- stylelint 16 → 17, config-recommended 14 → 18, config-standard 36 → 40, order 6 → 7
- vue-types 5 → 6
- video.js 7 → 8
- cropperjs v2 evaluated but reverted to v1 due to incompatible API rewrite

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 20:46:12 +08:00
DevDengChao e31423bc6d chore(deps): low-risk major upgrades (Phase B)
- Remove deprecated @iconify/iconify (replaced by @purge-icons/generated)
- @commitlint/cli + config-conventional 19 → 20
- lint-staged 15 → 16
- rimraf 5 → 6
- markmap-common/lib/toolbar/view 0.16-0.17 → 0.18
- vue3-signature 0.2 → 0.4
- vue-dompurify-html 4 → 5

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 20:35:24 +08:00
DevDengChao 5284b00706 chore(deps): update all semver-compatible packages to latest
Bump ~23 packages within their declared semver ranges, including:
- vue 3.5.26 → 3.5.29
- dayjs, lodash-es, qs, highlight.js, jsencrypt
- prettier, postcss, rollup, terser, autoprefixer
- and others

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 20:33:08 +08:00
DevDengChao 550c30eae4 chore: post-upgrade cleanup
- Update Node.js engine requirement to >= 20.19.0 (Vite 7 requirement)
- Remove duplicate entries in optimizeDeps include list
- Remove build-time-only packages (sass, unocss) from optimizeDeps

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 20:12:44 +08:00
DevDengChao fd11e07e92 chore(deps): upgrade Vite 5.1.4 → 7.3.1 and ecosystem plugins
Core:
- vite 5.1.4 → 7.3.1
- @vitejs/plugin-vue 5 → 6.0.4
- @vitejs/plugin-vue-jsx 3 → 5.1.4
- @vitejs/plugin-legacy 5 → 7.2.1
- @types/node 20.17.9 → 25.3.3

Plugins:
- unplugin-auto-import 0.16.7 → 21.0.0
- unplugin-vue-components 0.25.2 → 31.0.0
- unplugin-element-plus 0.8.0 → 0.11.2
- vite-plugin-svg-icons-ng 1.3.1 → 1.5.2
- vite-plugin-top-level-await 1.4.4 → 1.6.0

Config:
- Switch to Sass Modern Compiler API (api: 'modern-compiler')
- Remove silenceDeprecations workaround

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:49:57 +08:00
DevDengChao f4b8fea579 chore(deps): upgrade ECharts 5.5.0 → 6.0.0
Note: echarts-wordcloud has unmet peer dep (expects echarts ^5)
but works at runtime. Monitor for official v6 support.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:46:13 +08:00
DevDengChao 6ffcbbc1d2 chore(deps): migrate ESLint 8 → 10 with flat config
- Upgrade eslint 8.57.1 → 10.0.2
- Migrate .eslintrc.js → eslint.config.mjs (flat config)
- Replace vite-plugin-eslint → vite-plugin-eslint2
- Replace @typescript-eslint/eslint-plugin + parser → typescript-eslint
- Upgrade eslint-plugin-vue 9 → 10, vue-eslint-parser 9 → 10
- Remove eslint-define-config, eslint-config-prettier, eslint-plugin-prettier
- Delete .eslintignore (now handled in flat config ignores)
- Remove deprecated rules: vue/script-setup-uses-vars, vue/no-setup-props-destructure

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:44:40 +08:00
DevDengChao 53f779afa2 chore(deps): upgrade UnoCSS 0.58.5 → 66.6.2 and related packages
- unocss 0.58.9 → 66.6.2
- @unocss/eslint-config 0.57.7 → 66.6.3
- @unocss/eslint-plugin 66.1.0-beta.5 → 66.6.3
- @unocss/transformer-variant-group 0.58.9 → 66.6.3

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:38:32 +08:00
YunaiV 32ad593fae feat(mes): 更新检验单完成接口及权限管理 2026-03-02 19:38:23 +08:00
DevDengChao 643eb92aff chore(deps): upgrade Vue I18n 9.10.2 → 11.2.8, fix related compat issues
- Upgrade vue-i18n to 11.2.8, @intlify/unplugin-vue-i18n to 11.0.7
- Remove vue-i18n CJS alias from vite.config.ts (no longer needed)
- Remove vue-i18n from optimizeDeps include list
- Upgrade bpmn-js-token-simulation 0.36.2 → 0.39.2 (ids@3 compat)
- Fix duplicate route name 'Redirect' (Vue Router 5 enforces uniqueness)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:36:31 +08:00
YunaiV fa38b554ea feat(mes): 更新反馈和入库相关接口及状态管理
将多个接口的执行方法重命名为完成方法,增强语义清晰度。更新相关的权限控制和状态枚举,确保系统逻辑一致性。
2026-03-02 19:25:37 +08:00
DevDengChao 7991028e0a chore(deps): upgrade @vueuse/core 10.9.0 → 14.2.1
Crosses 4 major versions. All composables used by the project remain
compatible. All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:16:43 +08:00
DevDengChao c0414a563f chore(deps): upgrade Vue Router 4.4.5 → 5.0.3
Major version with no breaking changes for this codebase. Dynamic route
generation via router.addRoute() and navigation guards work correctly.
All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:14:18 +08:00
DevDengChao 7326634cd3 chore(deps): upgrade Pinia 2.1.7 → 3.0.4, persistedstate 3.2.1 → 4.7.1
Pinia 3 is a "boring major" removing only deprecated APIs. The
persistedstate plugin v4 default export remains compatible.
All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:12:27 +08:00
DevDengChao 81f00adae3 chore(deps): upgrade TypeScript 5.3.3 → 5.9.3
Multiple minor versions with improved type inference. All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:10:28 +08:00
DevDengChao 136ef314b5 chore(deps): upgrade bpmn-js-properties-panel 5.23.0 → 5.52.1
bpmn-js was already at v18. Properties panel minor update.
All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:06:04 +08:00
DevDengChao c13d5d7dfd chore(deps): upgrade vue-tsc 1.8.27 → 3.2.5
Major version bump with stricter type checking. Pre-existing type errors
in source code are surfaced but do not affect runtime. All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:03:39 +08:00
DevDengChao b6f40353ad chore(deps): upgrade Sass 1.69.5 → 1.97.3
Patch update. All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 19:00:25 +08:00
DevDengChao dec43ffcee chore(deps): upgrade Element Plus 2.11.1 → 2.13.3
Minor update. All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 18:58:47 +08:00
DevDengChao 3dad65a53f chore(deps): upgrade Axios 1.9.0 → 1.13.6
Minor/patch update. All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 18:56:55 +08:00
DevDengChao 9864cf5a92 chore(deps): upgrade Vue 3.5.12 → 3.5.26
Patch update with no breaking changes. All 24 E2E tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 18:54:36 +08:00
YunaiV 4d66a7072c feat(mes): 添加运单填写功能及相关状态管理 2026-03-02 18:54:26 +08:00
DevDengChao 1b9fcc51a1 test: add Playwright E2E test suite as regression safety net
Set up 24 E2E tests covering auth, navigation, user CRUD, permissions,
UI features, and smoke tests using Playwright with API mocking via
page.route(). This provides a safety net before proceeding with
dependency upgrades.

- Add playwright.config.ts with setup project + storageState auth
- Add .env.e2e disabling captcha/tenant/encryption for test mode
- Add e2e/ directory with fixtures, helpers, page objects, and tests
- Add test:e2e scripts to package.json

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 18:49:50 +08:00
YunaiV 5375487d57 feat(mes): 更新销售出库单状态枚举及相关逻辑
新增待填写运单状态,优化销售出库单状态描述,调整相关方法注释以提高可读性。同时,更新前端表单以支持填写运单功能,确保用户体验一致性。
2026-03-02 18:21:55 +08:00
YunaiV 1a1209088c review(mes): 移除 WmBatchSelect 组件并更新相关逻辑 2026-03-02 17:20:30 +08:00
YunaiV 77e25ce9d8 feat(mes): 移除收货地址字段并优化发货通知单选择器 2026-03-02 13:32:06 +08:00
YunaiV 0e58608fe1 feat(mes): 添加客户验证逻辑至销售通知单创建与更新 2026-03-02 12:59:47 +08:00