2598 Commits

Author SHA1 Message Date
YunaiV
b42e9b36e5 feat(wms):优化 antd、ele 的 order receipt 迁移 2026-05-18 01:02:09 +08:00
YunaiV
f8c2d4b1ff feat(wms):优化 antd、ele 的 order receipt 迁移 2026-05-17 23:56:05 +08:00
YunaiV
41d5aa93d6 feat(wms):新增 ele 的 order receipt 迁移 2026-05-17 23:40:00 +08:00
YunaiV
3135b28211 feat(全局):增加 number-range-input 组件 2026-05-17 23:35:31 +08:00
YunaiV
08511191f7 feat(wms):修复 print 顶部白块的问题,对齐 vue3 + ep 的样式 2026-05-17 23:15:16 +08:00
YunaiV
0246fa1ebc feat(wms):优化 order receipt 的实现,对齐 vue3 + ep 版本 2026-05-17 23:09:18 +08:00
YunaiV
0e4012c623 feat(全局):增加 barcode 二维码组件 2026-05-17 23:07:56 +08:00
YunaiV
4933180560 feat(wms):增加 receipt 功能、评审 2026-05-17 21:39:15 +08:00
YunaiV
8710da9383 feat(wms):增加 wms 工具类 2026-05-17 19:09:01 +08:00
YunaiV
5a1f4901da feat(iot):优化 iot 设备管理的样式 2026-05-17 19:07:50 +08:00
YunaiV
3da4a3f417 feat(wms):将首页的枚举值去掉,统一合并到 constants 里,更聚焦点 2026-05-17 18:17:30 +08:00
YunaiV
84b91c6795 feat(iot):优化 iot 产品管理的样式 2026-05-17 18:11:31 +08:00
YunaiV
735ff018be feat(wms):增加 home 统计的迁移 2026-05-17 17:48:53 +08:00
YunaiV
0163794e3f feat(wms):增加 category 模块的迁移 2026-05-17 16:47:27 +08:00
YunaiV
bb63ca9541 feat(wms):增加 brand 模块的迁移 2026-05-17 16:35:51 +08:00
YunaiV
6b28518165 feat(wms):迁移 api 接口 2026-05-17 16:30:50 +08:00
YunaiV
4adce844d3 feat(wms):增加 merchant 模块的迁移 2026-05-17 10:50:34 +08:00
YunaiV
19b5f38e23 feat(wms):增加 warehouse 模块的迁移 2026-05-16 23:12:33 +08:00
YunaiV
80fa8b74e8 feat:补齐 antd 的 component: 'InputNumber', 的 class full 样式 2026-05-16 22:46:16 +08:00
YunaiV
5710761dbe feat(wms):调整 README.md 2026-05-16 15:09:05 +08:00
YunaiV
877ba2727f feat(wms):调整 README.md 2026-05-16 14:56:01 +08:00
YunaiV
70a639967c feat:更新 README.md
- 提交时不再用节点表单值覆盖 data.variables;与预览阶段使用同一份合并变量
- onChange 加 useDebounceFn(300ms) + 请求序号去重,handleAudit 提交前 await 最新一轮重算
- 切换任务时重置请求序号与 pending 重算
- 改用 form-create 官方 formData() 取节点表单当前值
- 节点表单初始化等 fApi 就绪后再计算下一节点(until + 1s 兜底)

同步至 web-antd / web-ele 两端
2026-05-16 14:44:01 +08:00
xingyu
59183029b6 !341 fix: 修复禁用的删除按钮仍然可以点击的问题
Merge pull request !341 from li_shifeng/fix-dept-delete
2026-05-14 08:29:04 +00:00
xingyu
e81ca2c13f !343 fix(@vben/web-antdv-next): 修复 InputNumber 组件宽度在表单中不占满的问题
Merge pull request !343 from XuZhiqiang/feat-antdv-next
2026-05-14 08:03:20 +00:00
XuZhiqiang
dcccef1c02 fix(@vben/web-antdv-next): 修复 InputNumber 组件宽度在表单中不占满的问题 2026-05-13 15:47:52 +08:00
XuZhiqiang
9a5bee4dce fix(@vben/web-antdv-next): adapter修正组件名称TextArea一致的大小写格式 2026-05-13 15:20:15 +08:00
xingyu
29665f02bf !342 feat(@vben/web-antdv-next): migrate ant-design-vue to antdv-next
Merge pull request !342 from XuZhiqiang/feat-antdv-next
2026-05-12 13:46:18 +00:00
XuZhiqiang
06f776d1ef feat(@vben/web-antdv-next): 替换 antdv-next 中不可用的 List 组件,手动迁移为 div 结构,后续组件库新增 Listy 组件在进行替换 2026-05-12 16:37:42 +08:00
XuZhiqiang
40f0ba71f5 feat(@vben/web-antdv-next): migrate ant-design-vue to antdv-next
Migration Summary: ant-design-vue → antdv-next
Core Changes
package.json - Replaced "ant-design-vue": "catalog:" with "antdv-next": "catalog:"

bootstrap.ts - Changed @vben/styles/antd to @vben/styles/antdv-next

adapter/component/index.ts - Major rewrite:

Removed dynamic defineAsyncComponent imports from ant-design-vue/es/...
Added static imports from antdv-next main entry
Renamed RangePicker → DateRangePicker, Textarea → TextArea
Defined local types for Rule, Locale, UploadRequestOption, FileType, Key
Bulk Import Replacements (100+ files)
from ant-design-vue → from antdv-next
from ant-design-vue/es/locale/... → from antdv-next/locale/...
from ant-design-vue/es/... → removed (use main entry)
from ant-design-vue/lib/... → removed (use main entry)
Component API Differences Handled
ant-design-vue	antdv-next	Files affected
Form.Item	FormItem	475 references
Tabs.TabPane	TabPane	240 references
Select.Option	SelectOption	151 references
Descriptions.Item	DescriptionsItem	2 references
Timeline.Item	TimelineItem	2 references
Radio.Group	RadioGroup	20 references
Collapse.Panel	CollapsePanel	9 references
Layout.Content/Sider/Header/Footer	LayoutContent/LayoutSider/...	14 references
Dropdown#overlay slot	Dropdown#popupRender	6 references
RangePicker	DateRangePicker	15+ references
Textarea	TextArea	37 references
ButtonGroup	Space (fallback)	12 references
Known Issues (requires manual attention)
List component - Not available in antdv-next. 4 files have TODO comments where List/List.Item/List.Item.Meta are used
@form-create/ant-design-vue - Kept as-is (compatible with antdv-next at runtime)
Type errors - ~366 type errors remain (vs 189 in web-antd), mostly pre-existing business logic issues and minor API differences
2026-05-12 15:30:08 +08:00
XuZhiqiang
0fced45a9c refactor(@vben/web-antdv-next): 根据web-antd初始化web-antdv-next 2026-05-12 12:14:32 +08:00
li_shifeng
2ea7da06c5 fix: 修复禁用的删除任然可以点击的问题 2026-05-11 14:13:23 +08:00
YunaiV
c164904a14 chore: 合并 github/master,引入 PR #259 BPMN 流程设计器审批节点自定义配置编辑后丢失修复 2026-05-04 00:36:22 +08:00
芋道源码
a0ceb45df9 Merge pull request #259 from lb1565387341/fix_bpmn_custom_user_config
fix: [bpm][antd&ele] 修复流程设计器自定义配置编辑后丢失的问题
2026-05-04 00:26:29 +08:00
YunaiV
c641542c71 fix(bpm):修正 BPM 流程实例审批弹窗网关分支重算的并发与提交问题
- 提交时不再用节点表单值覆盖 data.variables;与预览阶段使用同一份合并变量
- onChange 加 useDebounceFn(300ms) + 请求序号去重,handleAudit 提交前 await 最新一轮重算
- 切换任务时重置请求序号与 pending 重算
- 改用 form-create 官方 formData() 取节点表单当前值
- 节点表单初始化等 fApi 就绪后再计算下一节点(until + 1s 兜底)

同步至 web-antd / web-ele 两端
2026-05-03 16:35:03 +08:00
YunaiV
a3d8e4bfc1 feat: 添加包含和不包含条件选项到常量定义 2026-05-03 11:04:58 +08:00
YunaiV
e385823d46 fix: 修复 Vben5.0 form-create 多图上传校验拒绝 png/jpeg/gif,isImage 兼容 MIME 与扩展名两种 accept 写法 2026-05-02 22:56:38 +08:00
YunaiV
897220e19a fix: 修复 Vben5.0 download 接口 token 过期不触发刷新,导出/下载文件变成「账号未登录」JSON;web-antd / web-ele / web-naive / web-tdesign 加 Blob 业务错误嗅探拦截器 2026-05-02 20:36:00 +08:00
YunaiV
b293e112c6 fix: 修复 MALL 商品保存时 SKU 价格被反复 *100 的漂移 2026-05-02 20:23:43 +08:00
YunaiV
627e31f1b0 fix: 修复 Vben5.0 CRM 合同配置 / 客户公海规则配置表单 label 错用 labelClass: 'w-100',Tailwind v4 动态间距下被解析为 400px 撑爆 w-1/4 容器,挤掉 RadioGroup 输入区,改用 labelWidth: 120 2026-05-02 19:44:21 +08:00
YunaiV
8020b4b743 fix: 修复 MALL 商品列表/选择器「价格」列展示原始的「分」(web-antd / web-ele)
商品列表 [mall/product/spu/data.ts] 与商品选择器 [mall/product/spu/components/spu-select-data.ts]
的「价格」列原先 formatter: 'formatAmount2',只做了小数格式化、漏了「分转元」,导致
19900 直接显示成 19900.00(应为 199.00 元)。同文件的 marketPrice / costPrice 已正确使用
fenToYuan,唯独 price 漏了。

顺手将 spu/data.ts 的 price / marketPrice / costPrice 三列从手写闭包统一切到已注册的
formatFenToYuanAmount formatter,单位「元」从 cell 后缀挪进列标题(如「价格(元)」),
减少 8 处闭包并复用平台统一的 null/NaN 处理。
2026-05-02 19:38:50 +08:00
YunaiV
228c5463da fix: 修复 IoT 物模型表单 Form.Item 嵌套字段 name 误用点号字符串,事件类型等校验始终失败 / resetFields 写错路径 2026-05-02 19:27:35 +08:00
YunaiV
50ee691191 fix: 修复 web-ele 下 ApiSelect / ApiTreeSelect 误用 antd 的 fieldNames 写法导致下拉无内容
element-plus 适配器走 ApiComponent,识别的是 labelField / valueField / childrenField;
而 fieldNames 是 antd 风格写法,从 web-antd 复制过来未做适配,导致内部数据无法被映射成
{ label, value, children },下拉树/列表显示为空。

涉及:
- CRM 客户 / 联系人 / 线索 新增表单的「地址」树
- CRM 商机状态「应用部门」、产品「产品类型」树
- ERP 销售出库的 客户 / 销售人员 / 结算账户 / 产品 / 创建人 下拉
2026-05-02 18:55:48 +08:00
YunaiV
eda6ffaf1e fix: 修复 web-ele 下 ApiSelect / ApiTreeSelect 误用 antd 的 fieldNames 写法导致下拉无内容
element-plus 适配器走 ApiComponent,识别的是 labelField / valueField / childrenField;
而 fieldNames 是 antd 风格写法,从 web-antd 复制过来未做适配,导致内部数据无法被映射成
{ label, value, children },下拉树/列表显示为空。

涉及:
- CRM 客户 / 联系人 / 线索 新增表单的「地址」树
- CRM 商机状态「应用部门」、产品「产品类型」树
- ERP 销售出库的 客户 / 销售人员 / 结算账户 / 产品 / 创建人 下拉
2026-05-02 18:53:11 +08:00
xingyu
f542db27f9 !340 feat: 商城订单发货后可再修改发货信息
Merge pull request !340 from hice/master
2026-04-13 08:47:29 +00:00
xingyu4j
b2cf1646a4 fix: lint 2026-04-13 16:46:44 +08:00
xingyu4j
adecddae67 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin 2026-04-13 16:46:22 +08:00
xingyu4j
a653e428f3 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin 2026-04-13 16:45:32 +08:00
hice
eb62e63a04 feat: 商城订单发货后可再修改发货信息 2026-04-13 16:31:48 +08:00
Caisin
ccabbf0e97 feat: enable project-scoped preferences extension tabs (#7803)
* feat: enable project-scoped preferences extension tabs

Add a typed extension schema so subprojects can define extra settings,
render them in the shared preferences drawer only when configured, and
consume them in playground as a real feature demo. Extension labels now
follow locale keys instead of hardcoded app-specific strings.

Constraint: Reuse the shared preferences drawer and field blocks
Rejected: Add app-specific fields to core preferences | too tightly coupled
Rejected: Inline localized label objects | breaks existing locale-key flow
Confidence: high
Scope-risk: moderate
Reversibility: clean
Directive: Keep extension labels as locale keys rendered via $t in UI
Tested: Vitest preferences tests
Tested: Turbo typecheck for preferences, layouts, web-antd, and playground
Tested: ESLint for touched preferences and playground files
Not-tested: Manual browser interaction in playground preferences drawer

* fix: satisfy lint formatting for preferences extension demo

Adjust the playground preferences extension demo template so formatter and
Vue template lint rules agree on the rendered markup. This keeps CI green
without changing runtime behavior.

Constraint: Must preserve the existing demo behavior while fixing CI only
Rejected: Disable the Vue newline rule | would weaken shared lint guarantees
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Prefer computed/template structures that avoid formatter-vs-lint conflicts
Tested: pnpm run lint
Not-tested: Manual browser interaction in playground preferences extension demo

* fix: harden custom preferences validation and i18n labels

Tighten custom preferences handling so numeric extension fields respect
min, max, and step constraints. Number inputs now ignore NaN values,
and web-antd extension metadata uses locale keys instead of raw strings.
Also align tip-based hover guards in shared preference inputs/selects.

Constraint: Keep fixes scoped to verified findings only
Rejected: Broader refactor of preferences field components | not needed for these fixes
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Reuse the same validation path for updates and cache hydration
Tested: Vitest preferences tests
Tested: ESLint for touched preferences and widget files
Tested: Typecheck for web-antd, layouts, and core preferences
Not-tested: Manual browser interaction for all preference field variants

* fix: remove localized default from playground extension config

Drop the hardcoded Chinese default value from the playground extension
report title field and fall back to an empty string instead. This keeps
extension config locale-neutral while preserving localized labels and
placeholders through translation keys.

Constraint: Keep the fix limited to the verified localized default issue
Rejected: Compute the default from runtime locale in config | unnecessary for this finding
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Avoid embedding localized literals in extension default values
Tested: ESLint for playground/src/preferences.ts
Tested: Oxfmt check for playground/src/preferences.ts
Not-tested: Manual playground preferences interaction

* docs: document project-scoped preferences extension workflow

Add Chinese and English guide sections explaining how to define,
initialize, read, and update project-scoped preferences extensions.
Also document numeric field validation and point readers to the
playground demo for a complete example.

Constraint: Keep this docs-only and aligned with the shipped API
Rejected: Update only Chinese docs | would leave English docs inconsistent
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep zh/en examples and playground demo paths synchronized
Tested: git diff --check; pnpm build:docs
Not-tested: Manual browser review of the rendered docs site

* fix: harden custom preferences defaults and baselines

Use a locale-neutral default for the web-antd report title.
Also stop preference getters from exposing mutable baseline
or extension schema objects, and add a regression test for
external mutation attempts.

Constraint: Keep behavior compatible with the shipped preferences API
Rejected: Return raw refs with readonly typing only | callers could still mutate internals
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep defensive copies for baseline and schema getters unless storage semantics change
Tested: eslint, oxlint, targeted vitest, filtered typecheck, git diff --check
Not-tested: Full monorepo typecheck and test suite

* test: relax custom preference cache key matching

Avoid coupling the custom-number cache test to one exact
localStorage key string. Match the intended cache lookup
more loosely so the test still verifies filtering behavior
without depending on the full namespaced cache key.

Constraint: Focus the test on cache filtering behavior
Rejected: Assert one exact key | brittle with namespace changes
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Prefer behavior tests over literal storage keys
Tested: targeted vitest, eslint, git diff --check
Not-tested: Full monorepo test suite

---------

Co-authored-by: caisin <caisin@caisins-Mac-mini.local>
2026-04-13 15:11:57 +08:00
Caisin
5b84ac5b13 feat(form-ui): support schema valueFormat for getValues payload shaping (#7804)
* feat(@vben-core/form-ui): support schema valueFormat on getValues

Some form fields emit UI-friendly structures such as time-range arrays,
while consumers and backend APIs often need a different payload shape.
This adds schema-level `valueFormat` hooks so `getValues()` can
normalize field output at read time without forcing callers to
post-process every submission path.

Constraint: Must preserve existing range-time mapping and nested field behavior
Constraint: Must not mutate live vee-validate form state while formatting output
Rejected: Global formatter config | too coarse for per-field payload shaping
Rejected: Post-submit-only transform | misses reset/query/change handlers
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep `getValues()` output derivation side-effect free
Directive: Clone raw form values before formatting derived payloads
Tested: vitest form-api test for valueFormat and existing getValues paths
Tested: oxlint on changed form-ui source and test files
Not-tested: Full repo typecheck baseline has unrelated .vue module resolution errors

* fix(@vben-core/form-ui): restore mount compatibility and share field path parsing

Follow-up review found two real regressions and one missing assertion in the
new value formatting flow. `FormApi.mount()` had become breaking by requiring
`componentRefMap`, and delete path resolution duplicated field-name parsing
instead of sharing the reader grammar. This patch restores backward
compatibility, centralizes field-name path parsing, and extends the test to
prove formatting does not mutate live form values.

Constraint: Must preserve current valueFormat behavior and nested field support
Constraint: Must not reintroduce mutation of live vee-validate values
Rejected: Keep duplicated delete parsing | risks grammar drift from read path
Rejected: Only loosen mount tests | would leave consumer-facing API breakage
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Reuse shared field-name parsing for read/delete semantics in form-ui
Tested: vitest form-api test suite
Tested: oxlint on changed form-ui files
Not-tested: Full repo typecheck baseline has unrelated .vue module resolution errors
EOF && git push hekx feature-form-value-format

* fix(@vben-core/form-ui): clear stale component refs on unmount

A follow-up review found that `unmount()` left the private component ref map
populated. Because `mount()` now accepts an optional `componentRefMap`, a later
mount without a new map could silently reuse stale refs from a prior form
instance. This change clears the ref map on unmount and adds a regression test
covering remount behavior without a new ref map.

Constraint: Must preserve backward-compatible optional `mount()` ref map behavior
Constraint: Focus and field-ref lookups must not observe stale refs after unmount
Rejected: Clear refs only during next mount | stale state would still leak between lifecycle calls
Rejected: Remove mount fallback entirely | would undo the compatibility fix
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: When mount falls back to internal refs, unmount must always reset that cache
Tested: vitest form-api test suite
Tested: oxlint on changed form-api source and test files
Not-tested: Full repo typecheck baseline has unrelated .vue module resolution errors

* refactor(@vben-core/form-ui): trim redundant valueFormat plumbing

Review feedback identified a few small cleanups in the value formatting path.
This removes an unnecessary shallow clone in `getValues()`, reuses the
already-parsed `rawKey` from `resolveFieldNamePath()` instead of re-resolving
it in multiple helpers, and clarifies the `FormValueFormat` contract for
undefined-as-delete decomposition behavior.

Constraint: Must not change runtime valueFormat behavior or payload shape
Constraint: Documentation and helper cleanup should stay behavior-preserving
Rejected: Leave duplicate raw-key resolution in place | adds needless parsing churn
Rejected: Expand the formatter API further | outside the scope of this cleanup
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep read/format helper plumbing lean and avoid duplicate field-name parsing
Tested: vitest form-api test suite
Tested: oxlint on changed form-ui source and test files
Not-tested: Full repo typecheck baseline has unrelated .vue module resolution errors

* feat(@vben-core/form-ui): document valueFormat with live examples

The new `valueFormat` feature needed a concrete usage path in both the
playground and the docs so users can understand how raw component values differ
from the final payload returned by `getValues()`. This adds a dedicated form
example, wires it into the playground menu, and documents the API with an
interactive docs demo. The preview panels now stay in sync when values are set,
reset, or submitted.

Constraint: Must demonstrate both return-value and setValue decomposition flows
Constraint: Example previews must react to setValues, reset, and manual edits
Rejected: Only document via markdown snippet | insufficient for verifying live payload behavior
Rejected: Reuse an existing basic form page | would bury feature-specific behavior
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep playground and docs demos behaviorally aligned when extending valueFormat examples
Tested: eslint on playground/docs valueFormat demo files and route module
Tested: oxlint on playground route module
Not-tested: Full docs/playground app runtime was not launched in this session

* chore(@vben-core/form-ui): normalize valueFormat demo formatting

The previous feature/docs commit left a few formatter-only adjustments unstaged
after hooks rewrote line wrapping in the new demo and docs pages. This commit
captures those final non-behavioral formatting updates so the branch matches the
current working tree.

Constraint: Must not change runtime behavior or docs meaning
Rejected: Leave post-hook diffs unstaged | branch would not reflect local state
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: After hook-driven rewrites, verify the working tree is clean before final push
Tested: Git diff inspection of remaining changes
Not-tested: No additional runtime verification needed; formatting-only follow-up
EOF && git push hekx feature-form-value-format

* fix(@vben-core/form-ui): remove docs demo dayjs dependency

The docs valueFormat demo imported `dayjs` directly even though the docs
package does not declare it as a dependency. That caused `@vben/docs:build`
to fail in CI during VitePress bundling. This change removes the direct
import, keeps the preview formatter generic for day-like values, and drops
the docs-only preset button that required constructing dayjs instances.

Constraint: Docs build must succeed without adding new package dependencies
Constraint: Playground example should remain unchanged and fully interactive
Rejected: Add dayjs to docs dependencies | unnecessary for a small display demo
Rejected: Externalize dayjs in VitePress build | hides a package boundary issue
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Docs demos should avoid imports only available through transitive deps
Tested: pnpm exec eslint docs/src/demos/vben-form/value-format/index.vue
Tested: pnpm --dir docs run build
Not-tested: No browser-side manual verification of the docs demo in this session

---------

Co-authored-by: caisin <caisin@caisins-Mac-mini.local>
2026-04-13 11:22:04 +08:00
芋道源码
f610bd690b !339 增加 iot、mes 的说明
Merge pull request !339 from 芋道源码/dev
2026-04-12 13:29:10 +00:00
YunaiV
76f9d3d9fc merge: 合并 master 分支,解决 isUrl 冲突(保留从 @vben/utils 导出的方式)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 21:27:05 +08:00
YunaiV
1e6c39a4c6 feat:增加 iot 模块 2026-04-12 21:24:37 +08:00
YunaiV
7a1f8da68f feat:增加 iot 模块 2026-04-12 21:24:19 +08:00
YunaiV
51cae9b00c feat(mes):增加 mes 模块 2026-04-12 16:45:38 +08:00
YunaiV
7cbeaa8390 feat(mes):增加 mes 模块 2026-04-12 16:44:53 +08:00
Caisin
6be3a0e204 feat(common-ui): add labelFn support to ApiComponent (#7801)
* feat: allow api-component labels to be derived from option data

ApiComponent already normalizes option records into the label/value shape used by
consuming controls, but label text could only come from a single field. Add
labelFn so callers can build labels from the full option record while keeping
labelField as the fallback path.

This keeps the change inside the existing component instead of introducing a
wrapper, and it also normalizes direct options through the same transform path
as API-loaded options for consistent behavior.

Constraint: Must extend the existing ApiComponent API instead of adding a second
Constraint: wrapper component
Rejected: Add a separate ApiLabelComponent wrapper |
Rejected: extra surface area for one option-mapping concern
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep labelFn as a presentation transform and preserve labelField
Directive: fallback for existing callers
Tested: pnpm exec eslint api-component.vue index.ts types.ts
Tested: pnpm exec vue-tsc --noEmit -p packages/effects/common-ui/tsconfig.json
Not-tested: runtime integration in consuming select/tree-select components

* Update packages/effects/common-ui/src/components/api-component/api-component.vue

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-04-12 14:29:18 +08:00
过冬
a9b76ba2ed fix: antdv-next message/notification 跟随暗色主题 (#7799) 2026-04-12 11:51:23 +08:00
Jin Mao
53ccec1d80 fix: 修复VITE_APP_TITLE变量替换语法
- 将index.html中的<%= VITE_APP_TITLE %>替换为%VITE_APP_TITLE%
- 更新web-antd、web-antdv-next、web-ele、web-naive、web-tdesign应用
- 修改文档中loading组件的VITE_APP_TITLE引用方式
- 修复vite-config插件中默认加载模板的变量语法
- 统一所有应用和模板中的环境变量引用格式
2026-04-11 14:29:18 +08:00
Jin Mao
4af5d6152b chore: fix actions error 2026-04-11 14:13:13 +08:00
xingyu4j
307781f437 chore: update deps 2026-04-10 22:16:33 +08:00
xingyu4j
1326994d8e fix: tailwindcss lint config 2026-04-10 22:14:09 +08:00
xingyu4j
fd70a3f3e0 fix: lint 2026-04-10 22:01:01 +08:00
xingyu4j
298930b0d7 chore: remove vite-plugin-html 2026-04-10 22:00:33 +08:00
xingyu4j
54d95b8761 fix: check deps 2026-04-10 21:23:24 +08:00
xingyu4j
4a16040d3e chore: update deps 2026-04-10 21:18:26 +08:00
xingyu4j
ee95548340 fix: tailwindcss lint 2026-04-10 21:13:04 +08:00
xingyu4j
320e687bad fix: ts config 2026-04-10 21:08:54 +08:00
Jin Mao
ad43c6817e fix: 配置 TypeScript 构建根目录
- 添加 rootDir 编译选项指向 ./src 目录
- 保持现有编译配置不变
- 排除测试文件和 node_modules 目录
2026-04-09 14:48:26 +08:00
Jin Mao
c8747c079d chore: update deps 2026-04-08 18:25:39 +08:00
dullathanol
224bfe7fcb chore: 修正注释 2026-04-08 10:19:53 +08:00
dullathanol
f443bfbc7b fix: tailwindcss config 2026-04-08 10:11:05 +08:00
过冬
195b2ea0d2 Merge branch 'vbenjs:main' into main 2026-04-08 09:34:24 +08:00
Jin Mao
4150479549 chore: fix lint 2026-04-08 07:20:52 +08:00
dullathanol
5ebf513498 fix: 修正 Modal/Drawer 中 loading 属性注释 2026-04-07 12:28:57 +08:00
dullathanol
4e4ffc439c feat: 支持 overflow 配置以允许拖拽超出可视区 2026-04-07 11:41:39 +08:00
dullathanol
ad7ed50b52 fix: 弹窗组件拖拽后全屏位置异常 2026-04-06 22:26:27 +08:00
Jin Mao
92f8916225 chore: fix lint
- 关闭 vitest/require-mock-type-parameters 规则
2026-04-06 21:20:53 +08:00
dullathanol
7e4edd270d fix: 补全 ComponentPropsMap 与 Vxe 表格表单链路的类型 2026-04-05 19:03:03 +08:00
dullathanol
332ff44219 fix: 修复 FormField 在 SFC 中的运行时异常 2026-04-05 03:05:01 +08:00
dullathanol
834ce3efc0 fix: 修复部分情况 component 类型丢失问题 2026-04-05 01:59:17 +08:00
dullathanol
5211f5065d feat: 表单 Schema 支持组件 Props 映射泛型,同步适配VxeGrid 2026-04-04 23:40:27 +08:00
dullathanol
96d6f89732 refactor: 简化 componentProps 回调的类型写法 2026-04-03 15:02:32 +08:00
dullathanol
6ab06584eb fix: 函数式 componentProps 按已注册 component 的 Props 校验返回值 2026-04-03 13:36:03 +08:00
dullathanol
a6433c2b50 feat: Schema 中 componentProps 随注册组件联动类型提示 2026-04-03 01:39:49 +08:00
墨苒孤
128a131797 fix(form): 修复表单示例中 switch 组件无法切换的问题 (#7636) (#7763) 2026-04-02 18:18:56 +08:00
橙子
c775d7ed80 fix: interface DropdownMenuProps don‘t have key prop (#7757) 2026-04-02 08:33:26 +08:00
HaroldZhangCode91
b8b4308e1c feat: fix oxlint error for oxlint upgrade (#7756)
1. remove unknown rule out of oxlint
2. add the corresponding back to eslint-config
3. fixed the eslint error for package.json
2026-04-01 19:28:57 +08:00
墨苒孤
80d6e2255f fix: make search case-insensitive (#7689) (#7755) 2026-04-01 19:17:36 +08:00
橙子
4e0968d4b7 perf: replace onUnMounted to tryOnScopeDispose (#7747)
* perf: replace `onUnMounted` to `tryOnScopeDispose`

* perf: replace `onUnMounted` to `tryOnScopeDispose`
2026-04-01 10:30:54 +08:00
Jin Mao
44a5809a46 chore: update deps 2026-04-01 08:10:49 +08:00
xingyu4j
2428fb1407 fix: extension-document 2026-03-30 19:50:44 +08:00
xingyu4j
bb78882f72 feat(@vben/plugins): add tiptap rich text editor 2026-03-30 19:36:29 +08:00
xingyu4j
df88a23102 chore: typescript config is expired‌ 2026-03-30 18:26:07 +08:00
xingyu4j
ca5f360231 chore: update deps 2026-03-30 18:24:25 +08:00
Anonymouscen
147b50ec45 chore: 修复名称错误问题,帐户改为账户 (#7735) 2026-03-29 14:17:00 +08:00
橙子
34439dce4e fix: history search can not remove (#7732) 2026-03-29 14:16:32 +08:00
Jin Mao
9a22027b35 chore: 更新 GitHub Actions 依赖版本
- 将 pnpm/action-setup 从 v4 升级到 v5
- 将 release-drafter/release-drafter 从 v6 升级到 v7
- 更新所有工作流中的依赖版本以确保兼容性
2026-03-25 17:58:47 +08:00
Jin Mao
282a102826 chore: fix lint 2026-03-25 17:31:33 +08:00
Jin Mao
417e6c2ade chore: fix lint && typecheck 2026-03-25 16:33:41 +08:00
Jin Mao
9d69d7f46c Merge branch 'main' into chore/plugins 2026-03-25 15:19:21 +08:00
Jin Mao
87d1593a1f refactor(effects): 扩展 echarts 类型定义并优化插件配置合并逻辑
- 添加 PieSeriesOption 和 RadarSeriesOption 到 echarts 类型定义
- 添加 LegendComponentOption 和 ToolboxComponentOption 组件选项
- 重构 providePluginsOptions 函数实现深合并逻辑
- 优化 vxe-table 初始化中的表单工厂优先级处理
- 调整 playground 中的 import 语句顺序和格式
2026-03-25 15:16:24 +08:00
过冬
7fbdf3d914 fix(@vben/common-ui): 修复 JsonViewer 在 Vite 下因 CJS 默认导出未解包导致的渲染失败 (#7728)
* fix: lint

* fix(@vben/common-ui): 修复 JsonViewer 在 Vite 下因 CJS 默认导出未解包导致的渲染失败
2026-03-25 14:54:14 +08:00
JyQAQ
65287cf4b7 feat: Dockerfile构建调整 (#7727)
Co-authored-by: 吉远 <jiyuan@txhmo.com>
2026-03-25 14:53:26 +08:00
Jin Mao
6da3017dcf feat: 插件新增依赖注入功能 2026-03-25 14:46:55 +08:00
Jin Mao
5c02057198 refactor(effects): 替换上下文创建逻辑为全局选项管理
- 移除 createContext 依赖并实现全局插件选项存储
- 添加 providePluginsOptions 函数用于提供插件配置
- 添加 injectPluginsOptions 函数用于注入插件配置
- 添加 resetPluginsOptions 函数用于重置插件配置
- 更新 package.json 导出配置添加主入口点定义
2026-03-25 14:42:40 +08:00
Jin Mao
a7ca7cdb9f refactor(vxe-table): 重构 useTableForm 函数实现并优化初始化逻辑
- 将 useTableForm 从箭头函数改为普通函数声明
- 简化表单工厂函数的获取逻辑,支持上下文注入
- 移除初始化时的重复上下文注入代码
- 改进错误提示信息的准确性
- 调整代码结构以提高可读性和维护性
- 将 SetupVxeTable 接口中的 useVbenForm 字段改为可选参数
2026-03-25 14:42:31 +08:00
Jin Mao
79408d406d feat: 添加插件模块导出
- 导出 types 模块
- 导出 plugins-context 模块
2026-03-25 13:33:12 +08:00
Jin Mao
e555f71bf8 feat(vxe-table): 集成表格插件并优化初始化配置
- 添加了完整的 vxe-table 插件功能实现
- 实现了插件上下文选项注入机制
- 重构了 useTableForm 工厂函数的初始化逻辑
- 支持通过参数或上下文注入 useVbenForm 函数
- 优化了组件导入和类型定义
- 添加了插件使用文档说明
- 移除了未使用的组件注释代码
- 统一了字符串引号格式为双引号
2026-03-25 13:32:21 +08:00
Jin Mao
4c320346c3 docs(motion): 添加 motion 插件文档
- 创建了 Motion 插件的 README.md 文件
- 添加了插件导出组件和类型的说明表格
- 提供了插件的基本使用示例代码
- 包含了 MotionOptions 和 MotionVariants 类型导入说明
2026-03-25 13:27:10 +08:00
Jin Mao
e5ec88169a refactor: 重构 ECharts 插件类型定义和导出结构
- 将 ECOption 类型定义移至独立的 types.ts 文件
- 修改 echarts.ts 文件导入 ECOption 类型而不是定义
- 更新 index.ts 添加 types 导出
- 移除 echarts.ts 中冗余的类型导入和定义
- 添加完整的 README.md 文档说明插件使用方法
- 优化代码组织结构提高可维护性
2026-03-25 13:27:02 +08:00
Jin Mao
914711ae04 feat: 添加插件上下文和类型定义
- 创建了插件选项的 createContext 功能
- 定义了 VbenPluginsOptions 接口结构
- 添加了表单、模态框、消息和组件的插件选项接口
- 提供了插件选项的注入和提供功能
2026-03-25 13:25:19 +08:00
Jin Mao
4c1e3b9548 Merge branch 'fork/Voidlurk/fix-default' 2026-03-24 10:36:40 +08:00
Jin Mao
9cd3987475 Merge branch 'main' into fix 2026-03-24 10:24:18 +08:00
xueyitt
47a853330d feat: ApiSelect增加shouldFetch控制,在api请求之前的判断是否允许请求的回调函数 (#7713) 2026-03-24 10:22:02 +08:00
xueyitt
2aced2f659 feat: 增加table 帮助信息help通过表单values动态展示内容 (#7712) 2026-03-24 10:20:43 +08:00
Jin Mao
cd955df02f chore: fix lint 2026-03-24 10:19:24 +08:00
Bk201
0a819df2bf fix bug
[Vue warn]: Invalid prop: custom validator check failed for prop "variant".
2026-03-24 03:01:00 +08:00
xingyu4j
67afcadcf0 fix: rollup -> rolldown 2026-03-23 17:51:46 +08:00
xingyu4j
1128ef5acd chore: update deps 2026-03-23 17:13:39 +08:00
xingyu
ca39b8d0c9 !337 Merge branch 'main' of <a href="https://gitee.com/link?target=https%3A%2F%2Fgithub.com%2Fvbenjs%2Fvue-vben-admin">https://github.com/vbenjs/vue-vben-admin</a> into vite8
Merge pull request !337 from xingyu/vite8
2026-03-23 08:57:12 +00:00
xingyu4j
fece74f744 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into vite8 2026-03-23 16:55:27 +08:00
雪忆天堂
6b3506f128 feat: table 类型VxeTableGridColumns替代VxeTableGridOptions['columns']魔法值写法 2026-03-23 10:06:35 +08:00
雪忆天堂
5613dcef99 feat: table允许通过props动态变化data数据 2026-03-23 10:05:32 +08:00
MistyMoon
3528517fe0 fix(project): fix sub sidebar theme in two-column menu (#7708)
- Reset light tokens for nested sub sidebars.
- Align the extra title logo theme with sidebarThemeSub.
2026-03-22 09:15:56 +08:00
Jin Mao
2a5b520ec9 chore: update deps 2026-03-22 09:15:27 +08:00
lmx
e2fb3602f1 fix: 修复菜单项外部链接跳转问题
- 引入 isHttpUrl 工具函数用于判断 URL 类型
- 添加 isHttp 计算属性检测父路径是否为 HTTP 链接
- 修改菜单项渲染逻辑,对外部链接直接使用原地址跳转
- 调整 HTML 结构,将链接属性移到正确位置
- 确保内部路由和外部链接都能正常工作
2026-03-19 23:56:13 +08:00
lmx
da3580cbd7 Merge remote-tracking branch 'origin/main' 2026-03-19 22:07:20 +08:00
xingyu
0c300d040c fix: tailwindcss config (#7693)
* chore: update deps

* fix: tailwindcss config

* fix: lint

* fix: lint

* chore: update deps
2026-03-19 15:51:09 +08:00
橙子
d43a3729c3 fix: playground(drawer) comment (#7695) 2026-03-19 09:03:40 +08:00
Jin Mao
bed97a84d8 revert: "fix: sass-embedded@1.98.0 在 macOS 13 会直接崩 (#7692)" 2026-03-19 09:02:28 +08:00
afe1
b908076846 fix: sass-embedded@1.98.0 在 macOS 13 会直接崩 (#7692)
* fix: catelog

* fix: system
2026-03-18 20:18:25 +08:00
Noah Lan
885a0a9a00 fix: build.mjs commands could not be executed correctly. (#7682)
* fix: Fix issue where commands could not be executed correctly when they contained spaces

* chore: oxfmt
2026-03-17 18:59:35 +08:00
Jin Mao
340baf4f0b chore: 处理合并的一些问题 2026-03-16 20:50:01 +08:00
Jin Mao
82cda0edaa Merge branch 'fork/xingyu4j/tsdown'
# Conflicts:
#	pnpm-lock.yaml
2026-03-16 20:36:27 +08:00
Jin Mao
9fe875355a fix: 修复构建脚本中的进程执行问题
- 移除平台特定的 pnpm 命令路径检测逻辑
- 统一使用 'pnpm' 命令执行
- 启用 shell 模式以正确处理命令执行
- 确保子进程继承正确的标准输入输出流
2026-03-16 20:30:27 +08:00
Jin Mao
5f21bd2036 Merge branch 'fork/jyqwq/feature/antd上传组件支持拖拽排序' 2026-03-16 19:54:08 +08:00
Sun
5b5ea6d2d8 chore: Configure the ESLint auto-repair feature (#7670) 2026-03-16 18:26:42 +08:00
JyQAQ
3dcfd23036 perf: 裁剪组件默认输出格式调整 (#7673)
Co-authored-by: 吉远 <jiyuan@txhmo.com>
2026-03-16 18:25:04 +08:00
xingyu
186914bcac fix: vxe i18n (#7675)
* chore: engines node

* chore: update deps

* fix: oxlint

* chore: fix lint issues

* chore: update deps

* fix: vxe i18n
2026-03-16 18:24:28 +08:00
吉远
4b3205fee8 feat: antd Upload 组件上传文件组支持拖拽排序 2026-03-16 15:01:43 +08:00
lmx
e4453841db fix: 修复在vue-router 的模式hash复制路径不对 2026-03-16 01:32:11 +08:00
xingyu4j
32db4cbd11 fix: build warn 2026-03-15 23:11:59 +08:00
xingyu4j
5558249cd3 chore: unbuild 2026-03-15 23:11:41 +08:00
xingyu4j
86b636ae54 fix(@vben/vite-config): externalize node utils dependency 2026-03-15 22:47:28 +08:00
xingyu4j
c9f7154524 chore(tsdown): remove unbuild leftovers 2026-03-15 22:04:48 +08:00
xingyu4j
d72f872369 refactor(tsdown): migrate styled ui-kit packages 2026-03-15 21:42:44 +08:00
xingyu4j
b300011d07 refactor(tsdown): migrate ui-kit vue packages 2026-03-15 21:30:13 +08:00
xingyu4j
3946253d6e chore(tsdown): align stub scripts and package exports 2026-03-15 21:17:41 +08:00
xingyu4j
11fc367845 chore: migrate vite build to tsdown 2026-03-15 21:04:12 +08:00
xingyu4j
bdc65cc250 chore: update deps 2026-03-15 21:03:41 +08:00
xingyu4j
70dad0f600 fix(node-utils): avoid find-up sync API in monorepo root lookup 2026-03-15 20:50:07 +08:00
xingyu4j
26e9aa244b fix(vite): adapt rolldown workspace resolution 2026-03-15 20:27:01 +08:00
xingyu4j
913f77fd2f chore(pnpm): sync lockfile for tsdown migration 2026-03-15 19:41:17 +08:00
xingyu4j
dba774e1c7 chore(vsh): migrate build to tsdown 2026-03-15 19:41:00 +08:00
xingyu4j
af09d652a3 chore(turbo-run): migrate build to tsdown 2026-03-15 19:40:54 +08:00
xingyu4j
0babdfbc44 chore(core-preferences): migrate build to tsdown 2026-03-15 19:40:48 +08:00
xingyu4j
f154d53be9 chore(core-composables): migrate build to tsdown 2026-03-15 19:40:42 +08:00
xingyu4j
ed3cd2fe3b chore(core-typings): migrate build to tsdown 2026-03-15 19:40:36 +08:00
xingyu4j
59912a00bc chore(core-shared): migrate build to tsdown 2026-03-15 19:40:29 +08:00
xingyu4j
675d8b0179 chore(core-icons): migrate build to tsdown 2026-03-15 19:40:17 +08:00
xingyu4j
a1ca296fc0 chore(node-utils): migrate build to tsdown 2026-03-15 19:40:09 +08:00
xingyu4j
c1b1fe90fd chore(oxlint-config): migrate build to tsdown 2026-03-15 19:39:59 +08:00
xingyu4j
30b5610a73 chore(oxfmt-config): migrate build to tsdown 2026-03-15 19:39:51 +08:00
xingyu4j
db9b9df8f7 chore(eslint-config): migrate build to tsdown 2026-03-15 19:39:43 +08:00
xingyu4j
ae6a75e913 build: migrate core ts packages to tsdown 2026-03-15 18:13:49 +08:00
xingyu
37d72c1628 fix: oxlint config (#7661)
* chore: engines node

* chore: update deps

* fix: oxlint

* chore: fix lint issues
2026-03-15 17:41:47 +08:00
xingyu4j
ab3e6bb37c chore: fix lint issues 2026-03-15 16:35:34 +08:00
xingyu4j
9ddb899a1a fix: oxlint 2026-03-15 16:23:18 +08:00
xingyu4j
1f0cda8aee chore: update deps 2026-03-15 12:35:42 +08:00
xingyu4j
90ae85317c chore: engines node 2026-03-15 12:33:23 +08:00
Jin Mao
a8ae891aff chore: update pnpm-lock 2026-03-15 03:57:55 +08:00
Jin Mao
1f2df3e944 Merge branch 'fork/Lmx1220/main'
# Conflicts:
#	pnpm-lock.yaml
2026-03-15 03:53:43 +08:00
Jin Mao
e39a432210 Merge branch 'fork/caodachen/fix_useEcharts' 2026-03-15 03:50:21 +08:00
xingyu4j
6b3bcee582 docs(@vben/docs): sync component docs with current APIs 2026-03-14 21:34:48 +08:00
xingyu4j
6c274b75b8 docs(@vben/docs): align guide docs with current tooling 2026-03-14 21:33:55 +08:00
xingyu4j
278032c94b docs: remove docs 2026-03-14 20:29:49 +08:00
xingyu4j
23a8982f5c chore: add prepare 2026-03-14 20:19:34 +08:00
xingyu4j
5df6c32d04 fix: lint 2026-03-14 20:14:35 +08:00
xingyu4j
7cae330c3c chore: deps 2026-03-14 19:48:49 +08:00
xingyu4j
100aaa4cee chore: vsh lint 2026-03-14 19:48:40 +08:00
xingyu4j
ead0b73e7b fix: lint 2026-03-14 19:47:02 +08:00
xingyu4j
2ace846e38 chore: recommend vscode yaml extension 2026-03-14 19:41:28 +08:00
xingyu4j
1d98393f0c chore: recommend vscode eslint extension 2026-03-14 19:39:37 +08:00
xingyu4j
c48ee2a364 revert: restore vscode extensions comments 2026-03-14 19:38:09 +08:00
xingyu4j
95d1e8432f fix: surface eslint diagnostics in vscode 2026-03-14 19:36:27 +08:00
xingyu4j
4d59ac78bd fix: lint 2026-03-14 19:34:22 +08:00
xingyu4j
f1143e134e fix: match root json files in oxfmt overrides 2026-03-14 19:33:55 +08:00
xingyu4j
e3e869faee fix: align oxfmt json commas with lint 2026-03-14 19:31:01 +08:00
xingyu4j
8350e72393 fix: align json formatter with lint rules 2026-03-14 19:28:25 +08:00
xingyu4j
15f74b9d97 refactor: drop unused turbo eslint shim 2026-03-14 19:20:39 +08:00
xingyu4j
55b54e24fe refactor: migrate command lint to oxlint 2026-03-14 19:13:50 +08:00
xingyu4j
46b4ce81e4 refactor: shrink eslint fallback layer 2026-03-14 19:10:22 +08:00
xingyu4j
7a723d03d0 fix: tailwindcss 2026-03-14 18:48:30 +08:00
xingyu4j
9d6fbfd0d6 refactor: replace simple px utility styles 2026-03-14 18:43:00 +08:00
xingyu4j
8fd6bf47b1 revert: restore px-based calc utilities 2026-03-14 18:36:31 +08:00
xingyu4j
f25f3a34d0 refactor: replace px calc spacing utilities 2026-03-14 18:31:35 +08:00
xingyu4j
2823848fae refactor: migrate spacing utilities to tailwind v4 syntax 2026-03-14 18:27:16 +08:00
xingyu4j
b9467b2bc3 chore: configure tailwind v4 dynamic spacing 2026-03-14 18:14:44 +08:00
xingyu4j
fa190e0975 chore: checkpoint tailwind spacing updates 2026-03-14 18:11:08 +08:00
xingyu4j
90dc8cf997 chore: update deps 2026-03-14 17:52:40 +08:00
xingyu
53c5ccc00a !336 chore: vite 8.0
Merge pull request !336 from xingyu/vite8
2026-03-14 05:40:10 +00:00
xingyu4j
06c9e8d7c1 fix: type check 2026-03-14 13:39:51 +08:00
xingyu4j
f32818c6aa fix(lint): resolve shared form and utility warnings 2026-03-14 13:28:45 +08:00
xingyu4j
fb03afb6b7 fix(lint): clean up ai rich text views 2026-03-14 13:28:13 +08:00
xingyu4j
577efa56a9 fix(lint): update bpmn designer compatibility code 2026-03-14 13:27:38 +08:00
xingyu4j
cb98b3a47e fix(lint): add ts-expect-error descriptions 2026-03-14 13:27:00 +08:00
xingyu4j
8daf9a3ce5 docs: update version 2026-03-14 12:32:50 +08:00
xingyu4j
a83d8248d7 fix: lint 2026-03-14 12:27:31 +08:00
xingyu4j
4cdc92f759 fix: lint 2026-03-14 12:16:31 +08:00
xingyu4j
54c668c3f0 chore: update deps 2026-03-14 11:37:28 +08:00
xingyu4j
ac3fc6b7d3 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into vite8 2026-03-14 11:34:06 +08:00
Jin Mao
a6a6efdf59 chore: release 5.7.0
- 更新 backend-mock 包版本
- 更新 web-antd 包版本
- 更新 web-antdv-next 包版本
- 更新 web-ele 包版本
- 更新 web-naive 包版本
- 更新 web-tdesign 包版本
- 更新 docs 包版本
- 更新 commitlint-config 包版本
- 更新 eslint-config 包版本
- 更新 oxfmt-config 包版本
- 更新 oxlint-config 包版本
- 更新 stylelint-config 包版本
- 更新 node-utils 包版本
- 更新 tsconfig 包版本
- 更新 vite-config 包版本
- 更新 @core/base/design 包版本
- 更新 @core/base/icons 包版本
- 更新 @core/base/shared 包版本
- 更新 @core/base/typings 包版本
- 更新 @core/composables 包版本
- 更新 @core/preferences 包版本
- 更新 @core/ui-kit/form-ui 包版本
- 更新 @core/ui-kit/layout-ui 包版本
- 更新 @core/ui-kit/menu-ui 包版本
- 更新 @core/ui-kit/popup-ui 包版本
- 更新 @core/ui-kit/shadcn-ui 包版本
- 更新 @core/ui-kit/tabs-ui 包版本
- 更新 constants 包版本
- 更新 access 包版本
- 更新 common-ui 包版本
- 更新 hooks 包版本
- 更新 layouts 包版本
- 更新 plugins 包版本
- 更新 request 包版本
- 更新 icons 包版本
- 更新 locales 包版本
- 更新 preferences 包版本
- 更新 stores 包版本
- 更新 styles 包版本
- 更新 types 包版本
- 更新 utils 包版本
- 更新 playground 包版本
- 更新 turbo-run 包版本
- 更新 vsh 包版本
- 更新根目录包版本
2026-03-14 09:14:23 +08:00
xingyu4j
8043faf6c7 docs: remove doc 2026-03-14 00:18:54 +08:00
xingyu4j
ebed9e64ed fix: lint 2026-03-14 00:17:06 +08:00
xingyu4j
913636ae44 refactor: simplify oxc eslint compatibility 2026-03-14 00:16:27 +08:00
xingyu4j
7b064e9f33 chore: vsh lint 2026-03-13 23:41:17 +08:00
xingyu4j
16da0eaca3 fix: vsh lint 2026-03-13 23:31:19 +08:00
xingyu4j
6acfee2737 fix: vsh lint 2026-03-13 23:26:29 +08:00
xingyu4j
92abf7edaa chore: oxlint-tsgolint 2026-03-13 23:22:52 +08:00
xingyu4j
395babc1f5 feat: tsgolint 2026-03-13 23:13:10 +08:00
xingyu4j
68cde54bad feat: add tsgolint 2026-03-13 23:13:01 +08:00
xingyu4j
c7d7529c00 chore: ts 2026-03-13 23:07:04 +08:00
xingyu4j
748f60c7bb chore: lint config 2026-03-13 22:12:15 +08:00
xingyu4j
ffee62e940 chore(vscode): update workspace editor settings 2026-03-13 22:02:50 +08:00
xingyu4j
a0ea221131 style(common-ui): normalize generic formatting 2026-03-13 21:57:18 +08:00
xingyu4j
2846bcb84e fix(common-ui): guard resize drag start state 2026-03-13 21:56:53 +08:00
xingyu4j
542ed6c08f refactor: rename formatter utilities 2026-03-13 21:56:23 +08:00
xingyu4j
6dabb848a5 build: migrate formatting pipeline to oxfmt 2026-03-13 21:56:08 +08:00
xingyu4j
de0181e0d9 fix: lint 2026-03-13 20:58:07 +08:00
xingyu4j
a850d426ef chore: fix lint and typecheck issues 2026-03-13 20:57:52 +08:00
xingyu4j
771277d5d9 fix: align oxlint compat config typing 2026-03-13 20:28:56 +08:00
xingyu4j
20b4f5c99f chore: oxlint config 2026-03-13 20:26:10 +08:00
xingyu4j
e7fa87b301 chore: finalize oxlint migration config 2026-03-13 20:25:25 +08:00
xingyu4j
40c66958bc chore: remove un use deps 2026-03-13 15:59:04 +08:00
xingyu4j
600fc71aed fix: eslint 2026-03-13 15:58:53 +08:00
xingyu4j
443e4b04cd chore: update vite 8 2026-03-13 15:51:28 +08:00
Lmx1220
556a3c0fab Update pnpm-lock.yaml 2026-03-13 15:25:14 +08:00
Lmx1220
1eca52f962 Update pnpm-lock.yaml
更新到使用vue3版本
2026-03-13 15:20:58 +08:00
Lmx1220
e21adb395b Merge branch 'main' into main 2026-03-13 15:08:24 +08:00
xingyu4j
0e4bf80bf4 chore: update deps 2026-03-13 10:33:23 +08:00
cdc
107750971b fix: fix useEcharts 2026-03-10 21:48:33 +08:00
橙子
24e1be47ca fix: fix component type (#7601) 2026-03-10 05:11:06 +08:00
Mr. Xie
7e0978c764 fix: 修复验证码登录发送逻辑,未校验手机号或发送失败仍开始倒计时的问题 (#7616) 2026-03-10 05:10:34 +08:00
Leo
83a0c9662d fix: 修复路由重复 (#7590)
* fix: 修复路由重复

优化mixed模式路由合并逻辑。以backend 为基础,并从frontend补充

* fix: 修复名称冲突时子项合并顺序/覆盖(后端子项可能会丢失)。

* fix: 优化可访问性判断逻辑

* fix: error Forbidden non-null assertion

* refactor(access): 调整可访问性判断逻辑
2026-03-10 05:09:48 +08:00
xingyu
a4736a49f8 feat: migrate to Tailwind CSS v4 (#7614)
* chore: update deps

* feat: use jsonc/x language

* chore: update eslint 10.0

* fix: no-useless-assignment

* feat: add CLAUDE.md

* chore: ignore

* feat: claude

* fix: lint

* chore: suppot eslint v10

* fix: lint

* fix: lint

* fix: type check

* fix: unit test

* fix: Suggested fix

* fix: unit test

* chore: update stylelint v17

* chore: update all major deps

* fix:  echarts console warn

* chore: update vitest v4

* feat: add skills ignores

* chore: update deps

* chore: update deps

* fix: cspell

* chore: update deps

* chore: update tailwindcss v4

* chore: remove postcss config

* fix: no use catalog

* chore: tailwind v4 config

* fix: tailwindcss v4 sort

* feat: use eslint-plugin-better-tailwindcss

* fix: Interference between enforce-consistent-line-wrapping, jsx-curly-brace-presence and Prettier

* fix: Interference between enforce-consistent-line-wrapping, jsx-curly-brace-presence and Prettier

* fix(lint): resolve prettier and better-tailwindcss formatting conflicts

* fix(tailwind): update theme references and lint sources

* style(format): normalize apps docs and playground vue files

* style(format): normalize core ui-kit components

* style(format): normalize effects ui and layout components
2026-03-10 05:08:45 +08:00
YunaiV
1cbdf442ee feat: 添加 URL 验证工具函数并优化 area-select 组件的类型定义 2026-03-07 17:33:02 +08:00
YunaiV
f91a2702c9 merge: 合并 master 分支的 form-create 修复
合并 master 分支中关于 form-create 组件的修复,包括 area-select 和 iframe 组件的改进。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 11:32:54 +08:00
芋道源码
c885c0c71a !333 fix(form-create): 【ele/antd】完成 vue3 review c153ff93 的所有 TODO 修复
Merge pull request !333 from puhui999/master-fix
2026-03-07 03:23:42 +00:00
YunaiV
a8f67ab717 !335 fix: 修复上传头像时,如果图片加载失败,弹框一直loading的问题,针对 ele 版本 2026-03-07 11:21:03 +08:00
zouawen
aa7d8630b5 fix: 侧边菜单栏拖拽优化 (#7606)
* fix: 拖拽使用遮罩层实现,使得拖拽到min或max临界值时cursor显示not-allowed,同时拖拽线条颜色变浅,类似于disabled,提升用户体验

* fix: 修复代码审查建议;修复lint和test报错

* fix: 修复遮罩层挡住hover:bg-primary视觉效果问题
2026-03-07 05:32:09 +08:00
lmx
36313f378e chore: update package.json and cspell.json 2026-03-04 19:17:33 +08:00
lmx
45054d3238 chore: update pnpm-lock.yaml 2026-03-04 19:03:41 +08:00
lmx
173e6b08c9 fix: 修复执行: check:cspell 命令路径参数传入没有转义导致检测路径失效。添加菜单右键功能。优化:多余监听 activePath 变化,自动滚动到激活项 watch 2026-03-04 18:25:15 +08:00
xingyu
75e4d07395 !335 fix: 修复上传头像时,如果图片加载失败,弹框一直loading的问题
Merge pull request !335 from li_shifeng/fix-upload-avatar
2026-03-04 02:21:33 +00:00
zouawen
2a86404ba5 fix: 修复混合双列布局侧边栏拖拽线条位置显示bug,同步修复普通布局和混合双列布局切换时width计算导致侧边栏宽度显示异常问题,新增普通布局和混合双列布局侧边栏菜单折叠状态同步 (#7596) 2026-03-02 15:31:29 +08:00
han
b8a0199cde feat(preferences): add toggle for copy preferences button (#7594)
Co-authored-by: hl <hl@nmcsoft.com>
2026-03-02 15:30:38 +08:00
Bryan Qiu
a46ed55a86 fix: bump version to 5.6.0 (#7592) 2026-03-02 04:22:21 +08:00
Jin Mao
1a9fbddef4 Merge branch 'main' into main 2026-02-28 12:04:48 +08:00
zouawen
1209aaafb4 fix: 修复lint报错 2026-02-28 11:25:08 +08:00
zouawen
8e71261d49 fix: 侧边栏菜单拖拽功能在设置内增加开关 2026-02-28 11:19:24 +08:00
li_shifeng
586978f1b0 fix: 修复上传头像时,如果图片加载失败,弹框一直loading的问题 2026-02-28 10:00:39 +08:00
dependabot[bot]
49e45eab54 chore(deps): bump vue-router from 4.6.4 to 5.0.3 (#7583)
Bumps [vue-router](https://github.com/vuejs/router) from 4.6.4 to 5.0.3.
- [Release notes](https://github.com/vuejs/router/releases)
- [Commits](https://github.com/vuejs/router/compare/v4.6.4...v5.0.3)

---
updated-dependencies:
- dependency-name: vue-router
  dependency-version: 5.0.3
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 17:06:18 +08:00
Jin Mao
bd22793ceb feat: add the attribute routeCached to route to control cache the DOM corresponding to the route 2026-02-27 16:04:01 +08:00
zouawen
b2013436c5 fix: 优化最大值限制 2026-02-27 11:12:51 +08:00
zouawen
cc808cb8c5 fix: 优化最小值限制 2026-02-27 11:07:28 +08:00
zouawen
afffc4b3f0 fix: 优化侧边栏拖拽逻辑,支持展开和折叠 2026-02-27 10:54:15 +08:00
zouawen
99710ef9dc feat: 优化侧边栏拖拽逻辑 2026-02-26 18:11:53 +08:00
zouawen
3d4ae04d9b Merge branch 'main' into main 2026-02-26 10:20:32 +08:00
zouawen
707b391449 feat: 侧边栏宽度拖拽改为composable实现,同时修复tabbar.ts文件lint报错 2026-02-26 10:09:57 +08:00
ming4762
45b843f344 fix: fix bug where renderEcharts gets stuck in a dead loop (#7561)
* 触发条件:echart所在页面开启keepalive 在其他页面切换颜色模式
2026-02-26 06:21:08 +08:00
Wu Clan
191fd90f06 chore: 更新表单描述显示样式 (#6938) 2026-02-26 06:17:04 +08:00
moil-xm
05920cd66d feat(vite-config): vite export typing (#7569)
* feat(vite-config): vite export typing

* feat(vite-config): add type

---------

Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2026-02-26 06:14:12 +08:00
Jin Mao
01508d5e42 fix: fix lint 2026-02-26 05:45:36 +08:00
zouawen
57cf6cbc9e feature: 简易版菜单宽度拖拽功能 2026-02-25 17:50:22 +08:00
芋道源码
dd69d7c1a5 !334 feat(iot):增加 modbus 配置 100%
Merge pull request !334 from 芋道源码/dev
2026-02-14 03:04:43 +00:00
YunaiV
63743b6929 feat(iot):增加 modbus 配置 100% 2026-02-14 11:02:56 +08:00
YunaiV
38597dd19d feat(iot):增加 modbus 配置 50% 2026-02-14 09:19:43 +08:00
AxiosLeo
03ebbea46a fix(menu): update hover color variable to use the correct reference (#7544)
* fix(menu): update hover color variable to use the correct reference

Medium Severity

In the horizontal .is-light menu section, --menu-item-hover-color is set to hsl(var(--menu-item-color)), but --menu-item-color is already defined as hsl(var(--accent-foreground)). This results in hsl(hsl(...)) at computed-value time, which is invalid CSS. The non-horizontal .is-light block correctly uses var(--menu-item-color) without the extra hsl() wrapper.

* fix(menu): simplify hover styles by removing redundant nested hover rules

Low Severity

The SCSS &:not(.is-active):hover { &:hover { ... } } compiles to a :hover:hover pseudo-class chain, which is functionally identical to a single :hover. The inner &:hover nesting is redundant and adds unnecessary complexity compared to placing styles directly inside the &:not(.is-active):hover block.
2026-02-12 22:22:53 +08:00
zouawen
8e7a5d1ec3 fix: Fix layout change, ensure div[ref="asideRef"] is contained within <aside> (#7551) 2026-02-12 22:22:34 +08:00
puhui999
e7365a4a00 fix(form-create): 【ele/antd】完成 vue3 review c153ff93 的所有 TODO 修复 2026-02-11 17:58:13 +08:00
AxiosLeo
aa74a2535b fix(tabbar): visitHistory field (#7543)
High Severity

The visitHistory field is a Stack<string> class instance persisted to sessionStorage via pinia-plugin-persistedstate. There's no custom serializer or hydration hook. When the page reloads, JSON.parse(JSON.stringify(stack)) produces a plain object {dedup, items, maxSize} that lacks all Stack methods (push, pop, remove, retain, etc.) and the size getter. Pinia's $patch replaces the Stack instance with this plain object, so subsequent calls like this.visitHistory.push(...) will throw a TypeError.
2026-02-11 16:09:37 +08:00
zouawen
32379ba4b7 fix: 双列菜单模式下新增深色侧边栏和深色侧边栏子栏 (#7542)
* fix: 双列菜单模式下新增深色侧边栏和深色侧边栏子栏

* fix: 修复报错 config.test.ts.snap

* fix: 修复lint报错

* fix: 修复侧边栏菜单文本内容溢出问题

* fix: 修复lint报错
2026-02-11 16:08:32 +08:00
xingyu
bf4fed78f2 !332 Merge branch 'main' of <a href="https://gitee.com/link?target=https%3A%2F%2Fgithub.com%2Fvbenjs%2Fvue-vben-admin">https://github.com/vbenjs/vue-vben-admin</a> into dev
Merge pull request !332 from xingyu/dev
2026-02-11 03:12:23 +00:00
xingyu4j
722afc85df Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2026-02-11 11:01:44 +08:00
xingyu
3036596d16 !331 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !331 from Jason/dev
2026-02-10 14:34:20 +00:00
jason
aee539f37e Merge remote-tracking branch 'yudao/dev' into dev 2026-02-10 22:08:57 +08:00
jason
05b41692ba feat: 移动端 uniapp 流程表单嵌入页面 2026-02-10 22:07:19 +08:00
moil-xm
7fe8d7b4be fix: ts 错误: 类型实例化过深,且可能无限 2026-02-10 16:13:36 +08:00
Bin
aace726a91 feat(playground): add antdv-next router link (#7532)
Co-authored-by: fuwb <fuwb@sunsharing.com.cn>
2026-02-10 13:09:34 +08:00
Jin Mao
e6f6e5464a Merge branch 'main' into main 2026-02-10 12:08:16 +08:00
Aliner
7d04b600fb fix: correct updateDate to updateData in the echarts hook (#7538)
* fix(@vben/plugins): Fixed the misspelling of the data update method name in the echarts hook

Correct updateDate to updateData, ensuring that the API method name is correct and consistent

* Revert "fix(@vben/plugins): Fixed the misspelling of the data update method name in the echarts hook"

This reverts commit 86d679cf25631bd1abd56d4f971e6db3a9b9d6d5.

* fix(@vben/plugins): fixed the misspelling of the data update method name in the echarts hook

Correct updateDate to updateData, ensuring that the API method name is correct and consistent
2026-02-10 11:19:45 +08:00
xingyu
8a622889ff !330 feat(form-create): 【ele/antd】新增 iframe 和省市区选择器组件
Merge pull request !330 from puhui999/master-fix
2026-02-10 01:32:01 +00:00
zouawen
463bfde2ac fix: config.test.ts.snap新增showRefresh参数 2026-02-10 08:50:06 +08:00
zouawen
893f74dc3e fix: 优化横向布局时菜单激活或聚焦时背景色,标签工具栏新增刷新按钮,其他样式优化 2026-02-09 16:32:02 +08:00
liubei
e136679934 fix: [bpm][antd&ele] 修复流程设计器自定义配置编辑后丢失的问题 2026-02-09 15:35:53 +08:00
Jin Mao
8a215fbcc7 chore: release 5.6.0 2026-02-09 05:09:57 +08:00
Jin Mao
ac5e4c4722 chore: update deps 2026-02-09 04:52:06 +08:00
Jin Mao
04d01b0bab chore: fix lint 2026-02-09 04:49:06 +08:00
Jin Mao
cb1d7565a3 Merge branch 'fork/ffgenius/antd-vue-next' 2026-02-09 03:09:01 +08:00
Jin Mao
1d9b6407a4 chore: 更新开发环境端口号配置
- 将 VITE_PORT 从 5555 修改为 5999
- 保持其他环境变量配置不变
2026-02-09 03:04:42 +08:00
MistyMoon
22ed522711 feat: support menuVisibleWithForbidden in generate-routes-backend (#7526)
当后端菜单项 `meta.menuVisibleWithForbidden` 为 true 时,将其路由组件替换为 403 页,菜单仍展示该项,访问时展示 403,便于用户知悉功能并申请权限。
2026-02-09 02:44:29 +08:00
Jin Mao
a3598ef859 chore: fix lint 2026-02-09 02:42:50 +08:00
Jin Mao
6fe09ec2dd perf: optimize the closing jump logic of tabs 2026-02-09 02:36:38 +08:00
Jin Mao
57911d9e09 Merge branch 'tab-2026020401' of https://github.com/ming4762/smart-boot-ui-vben into ming4762-tab-2026020401 2026-02-09 02:36:04 +08:00
Bin
3aee283495 Revert "feat(web): cancel pnpm-lock.yaml submission"
This reverts commit 54b24c2677.
2026-02-08 23:14:31 +08:00
Bin
54b24c2677 feat(web): cancel pnpm-lock.yaml submission 2026-02-08 23:12:40 +08:00
Bin
8cadad0a1e feat(web): add antdv-next model 2026-02-08 23:00:19 +08:00
zhongming4762
633c5f3cda perf: optimize the closing jump logic of tabs
* 依据tab访问历史回退上一个tab,原逻辑是返回一下个 或 上一个
 * 支持在配置中开启或关闭
2026-02-08 20:50:54 +08:00
zhongming4762
a8431e2040 perf: optimize the closing jump logic of tabs
* 依据tab访问历史回退上一个tab,原逻辑是返回一下个 或 上一个
 * 支持在配置中开启或关闭
2026-02-08 20:36:32 +08:00
zhongming4762
7a2b916387 perf: optimize the closing jump logic of tabs
* 依据tab访问历史回退上一个tab,原逻辑是返回一下个 或 上一个
 * 支持在配置中开启或关闭
2026-02-08 20:36:16 +08:00
puhui999
f3deefae56 Merge remote-tracking branch 'yudao/master' into master-fix 2026-02-08 11:57:23 +08:00
puhui999
d0a7065991 feat(form-create): 【ele/antd】新增 iframe 和省市区选择器组件
- 新增 iframe 网页嵌入组件,支持 URL 配置和实时预览
- 新增省市区三级联动选择器组件
- 支持 web-ele 和 web-antd 双版本
2026-02-08 11:56:02 +08:00
YunaiV
5b7e7c4d56 fix: 修复新增空目录菜单时 component 为 null 导致路由生成报错 2026-02-07 18:30:03 +08:00
Jin Mao
f4dfb68b7b Merge branch 'MrLeo-main' 2026-02-06 15:41:55 +08:00
Jin Mao
8f4f27d860 Merge branch 'main' of https://github.com/MrLeo/vue-vben-admin into MrLeo-main 2026-02-06 15:39:48 +08:00
tikitoki
e9eab29953 fix:fix password input icon visual bug in certain browser (#7521)
Co-authored-by: nick8799981325 <zc1078134211@163.com>
2026-02-06 15:28:48 +08:00
Leo Caan (陈栋)
4f1eeb7da5 fix: 修复设置default-expanded-level后无法check更低层级节点 logic and tree value updates (#7155)
假设缺省展开2级,当check 3级节点时,会触发effectWatch重新收缩到2级,并丢失check操作check操作andling.
2026-02-06 12:55:14 +08:00
Leo
6fd426d719 fix: 当 showToolbar 为 false 时禁用工具栏(vxe-table),减少无 Toolbar 的 Gird 留白 2026-02-04 22:20:17 +08:00
zhongming4762
331da3c8c7 perf: optimize the closing jump logic of tabs
* 依据tab访问历史回退上一个tab,原逻辑是返回一下个 或 上一个
2026-02-04 19:29:33 +08:00
ming4762
c48943bc67 fix: fix Nested Objects dependencies not effective (#7345) 2026-01-31 16:44:20 +08:00
芋道源码
f6c5bc4b7c !329 同步最新代码(2026.01 发版前)
Merge pull request !329 from 芋道源码/dev
2026-01-29 15:54:36 +00:00
YunaiV
448f073143 review:【antd/ele】【bpm】工作流相关的代码 2026-01-29 21:20:24 +08:00
xingyu
fc31aa3c8f !328 表单设计器 UserSelect/DeptSelect 支持默认选中当前用户/部门、修复商品 SKU 名称校验失败的问题
Merge pull request !328 from puhui999/master-fix
2026-01-29 03:28:24 +00:00
xingyu
7680b33b99 fix: #7140 (#7153)
* chore: add yaml eslint validate

* chore: update deps

* fix: unused ts lint

* fix: 弹窗只能点击一次 #7140

* chore: update actions/checkout v6

* chore: update node version v22.22.0
2026-01-28 18:05:20 +08:00
puhui999
548da70f9f fix(mall): 【antd/ele】修复商品 SKU 名称校验失败的问题
前端创建/编辑商品时,SKU 对象缺少 name 字段初始化,导致提交时后端校验 "商品 SKU 名字不能为空" 失败。

修改内容:
- form/index.vue: 初始化 SKU 添加 name 字段,提交前校验商品名称并赋值给 SKU
- sku-list.vue: createEmptySku 函数添加 name 字段

影响范围:web-antd、web-ele 两个版本
2026-01-28 17:45:20 +08:00
puhui999
0441afc24f Merge remote-tracking branch 'yudao/master' 2026-01-28 17:37:04 +08:00
puhui999
1196dab9e4 feat(form-create): 【antd/ele】表单选择器支持默认选中当前用户/部门
- UserSelect 组件新增 defaultCurrentUser 配置,支持默认选中当前登录用户
- DeptSelect 组件重构为独立的树形选择器,支持 defaultCurrentDept 配置
- DeptSelect 支持 returnType 配置,可返回部门 ID 或部门名称
- 修复 useSelectRule 未将自定义 props 默认值传递给组件的问题
- 修复 DeptSelect 数据加载完成前回显失败的问题
- 同时支持 web-antd 和 web-ele 两个应用
2026-01-28 17:23:39 +08:00
xingyu
00bf48704d !327 docs: README
Merge pull request !327 from xingyu/dev
2026-01-28 07:25:26 +00:00
xingyu4j
7a1218e6f0 fix: lint 2026-01-28 15:24:55 +08:00
xingyu4j
dbb1a19c5d fix: lint 2026-01-28 15:24:49 +08:00
xingyu4j
f433b207c6 docs: README lint 2026-01-28 15:24:44 +08:00
xingyu4j
82b91dfed3 fix: lint 2026-01-28 15:22:35 +08:00
xingyu4j
1295aee180 feta: add moddle cspell 2026-01-28 15:22:28 +08:00
xingyu4j
00105e1302 docs: README 2026-01-28 15:12:23 +08:00
xingyu
e82433e3e7 !326 fix: 弹窗只能点击一次
Merge pull request !326 from xingyu/dev
2026-01-28 06:33:37 +00:00
xingyu4j
ccaef2b591 fix: 弹窗只能点击一次 2026-01-28 14:32:06 +08:00
Jin Mao
bb5d75bc7e fix: 修复表单展开无效 (#7148)
- 修正模板中 ref 属性的引用名称
2026-01-27 11:35:50 +08:00
ming4762
528395e2c3 perf: optimizing hidden fields cannot trigger dependencies (#7142) 2026-01-26 16:12:26 +08:00
programmer
6a9012e5e4 chore: 给个人中心的2个按钮加上 i18n (#7138)
* fix: 个人中心按钮i18n

* fix: eslint format

* fix: 调整label宽度让英文显示在一行

* chore: 调整label小点

* fix: import

---------

Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2026-01-26 16:12:09 +08:00
橙子
6e8315ab40 fix: arguments order update (#7132)
Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2026-01-26 16:11:37 +08:00
xingyu
36aa195378 !325 remove playground
Merge pull request !325 from xingyu/dev
2026-01-26 07:08:43 +00:00
xingyu4j
de2662ca8f fix: remove playground 2026-01-26 15:08:14 +08:00
xingyu
35acb9558b !324 merge dev
Merge pull request !324 from xingyu/dev
2026-01-26 07:06:52 +00:00
xingyu4j
c4a262d1e2 docs: README 2026-01-26 15:06:10 +08:00
xingyu4j
a1e021074e docs: README 2026-01-26 15:03:32 +08:00
xingyu4j
0a7ead980a feat: naive add AutoComplete 2026-01-26 14:59:34 +08:00
xingyu4j
cdcbd58f0e fix: ele auto complete 2026-01-26 14:35:53 +08:00
xingyu4j
c57f3d8820 fix: ele auto complete 2026-01-26 14:34:45 +08:00
xingyu4j
02c977f969 fix: IDLPAD 2026-01-26 11:06:38 +08:00
xingyu4j
a0019cef04 chore: update deps 2026-01-26 10:37:44 +08:00
xingyu4j
e447a8a569 chore: remove unused deps 2026-01-26 10:34:58 +08:00
xingyu4j
071468b716 chore: yaml validate 2026-01-26 10:34:33 +08:00
xingyu4j
24b8bba754 fix: lint 2026-01-26 10:34:14 +08:00
xingyu4j
6d60071515 fix: lint sort 2026-01-26 10:33:23 +08:00
xingyu4j
baed599fcc Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2026-01-26 10:13:23 +08:00
Jin Mao
7cb2699f19 chore: 更新pnpm工作区配置
- 移除 neverBuiltDependencies 配置
- 移除 peerDependencyRules.allowedVersions 配置
- 重新整理 overrides 和 catalog 部分
- 保持 @ast-grep/napi 等依赖的目录引用配置
- 维持 eslint 版本约束在目录顶层配置中
2026-01-25 19:55:53 +08:00
YunaiV
1ce562601f feat(iot):【网关设备:80%】动态注册的初步实现(已测试) 2026-01-25 18:50:26 +08:00
Jin Mao
4b5da81ba6 chore(deps): 更新项目依赖包版本
- 更新 @playwright/test 从 1.57.0 到 1.58.0
- 更新 @tanstack/vue-query 从 5.92.8 到 5.92.9
- 更新 cheerio 从 1.1.2 到 1.2.0
- 更新 eslint-config-turbo 从 2.7.5 到 2.7.6
- 更新 playwright 从 1.57.0 到 1.58.0
- 更新 turbo 从 2.7.5 到 2.7.6
- 更新 vxe-pc-ui 从 4.12.10 到 4.12.12
- 更新 @babel/helper-define-polyfill-provider 从 0.6.5 到 0.6.6
- 更新 @cspell/dict-fullstack 从 3.2.7 到 3.2.8
- 更新 @cspell/dict-git 从 3.0.7 到 3.1.0
- 更新 @cspell/dict-node 从 5.0.8 到 5.0.9
- 更新 @cspell/dict-npm 从 5.2.29 到 5.2.30
- 更新 @parcel/watcher 相关包从 2.5.4 到 2.5.6
- 更新 @tanstack/query-core 从 5.90.19 到 5.90.20
- 更新 babel-plugin-polyfill 相关包到最新版本
- 更新 baseline-browser-mapping 从 2.9.17 到 2.9.18
- 更新 caniuse-lite 从 1.0.30001765 到 1.0.30001766
- 更新 electron-to-chromium 从 1.5.277 到 1.5.278
- 更新 eslint-plugin-turbo 从 2.7.5 到 2.7.6
- 更新 playwright-core 从 1.57.0 到 1.58.0
- 更新 turbo 平台特定版本到 2.7.6
- 更新 undici 从 7.19.0 到 7.19.1
2026-01-25 15:05:14 +08:00
Jin Mao
6aca9a9c99 test(dom): 更新元素可见区域计算的测试用例
- 修正了getElementVisibleRect函数的期望值断言
- 将bottom值从800更正为0以匹配实际计算结果
- 将left值从1100更正为0以匹配实际计算结果
- 将right值从1000更正为0以匹配实际计算结果
- 将top值从900更正为0以匹配实际计算结果
2026-01-25 14:22:22 +08:00
YunaiV
c55465a6c0 chore: merge origin/dev branch 2026-01-24 09:31:43 +08:00
YunaiV
2ae684bdad feat(iot):【设备定位】添加设备位置功能,支持地图展示和坐标选择 2026-01-23 07:06:28 +00:00
haohao
ce2bfa5cd2 refactor:【antd】【iot】将 DeviceSaveReqVO 和 DeviceRespVO 合并到 Device,简化设备 API 接口 2026-01-23 07:06:28 +00:00
jason
63265c1a6b feat: [bpm][antd] 审批签名大小控制 2026-01-23 07:06:28 +00:00
xingyu4j
fa195fde8e fix: lint 2026-01-23 14:48:21 +08:00
xingyu4j
1057f2932b chore: update deps 2026-01-23 14:48:06 +08:00
Jin Mao
b9224fc379 Merge branch 'main' into fix 2026-01-23 13:48:54 +08:00
Jin Mao
57dd818170 Merge branch 'fork/kuchaguangjie/fix' 2026-01-23 13:47:54 +08:00
Jin Mao
49256ec1b7 Merge branch 'main' into fix 2026-01-23 13:46:59 +08:00
Jin Mao
f6f92e5403 Merge branch 'fork/kuchaguangjie/fix' 2026-01-23 13:45:38 +08:00
Jin Mao
613c311076 Merge branch 'fork/abcd0f/dev/sun-local' 2026-01-23 13:25:03 +08:00
Jin Mao
9ee7a7d9ff Merge branch 'fork/Child-qjj/patch-1' 2026-01-23 13:21:49 +08:00
橙子
44f8aed06d fix: timer not need reactivity (#7128) 2026-01-23 13:16:09 +08:00
Sun
d5d4a5c591 feat(effects-plugins): 添加 echarts 图表更新功能
新增 updateDate 方法用于更新 echarts 图表选项,支持合并配置、
完全替换和延迟更新等模式。该方法会在组件未初始化时自动执
行首次渲染,并能够合并全局配置如 backgroundColor 等选项。
2026-01-23 11:06:45 +08:00
yuhengshen
74381aa8c1 fix: 嵌套弹窗,错误 merge options (#7126) 2026-01-22 20:07:13 +08:00
橙子
203ee9b623 fix(@vben-core/shared): element outside viewport, the element visible rect each prop expect 0 (#7120)
* fix(@vben-core/shared): element outside viewport

* fix(@vben-core/shared): element outside viewport
2026-01-22 11:37:01 +08:00
xingyu
13b1ef71a9 !323 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !323 from Jason/dev
2026-01-22 03:10:39 +00:00
jason
ba08820be8 Merge remote-tracking branch 'yudao/dev' into dev 2026-01-21 23:28:00 +08:00
jason
d9e933e3a6 feat: [bpm][antd] 审批签名大小控制 2026-01-21 23:25:48 +08:00
YunaiV
50216e5047 feat(iot):【设备定位】添加设备位置功能,支持地图展示和坐标选择 2026-01-21 21:10:09 +08:00
JyQAQ
6c8c49966a Perf: 优化antd upload组件参数获取 (#7114)
* perf(antd upload params): 优化组件参数取值 确保不同调用场景配置参数可用

* perf(antd upload params): 优化组件参数取值 确保不同调用场景配置参数可用

* perf(antd upload params): 优化组件参数取值 确保不同调用场景配置参数可用

* perf(antd upload params): 优化组件参数取值 确保不同调用场景配置参数可用
2026-01-21 17:20:53 +08:00
芋道源码
4aeb7a489a !322 refactor:【antd】【iot】将 DeviceSaveReqVO 和 DeviceRespVO 合并到 Device,简化设备 API 接口
Merge pull request !322 from haohaoMT/dev
2026-01-21 05:43:57 +00:00
Qiu
3862942e9f fix: chart instance disposal condition
dom has been disposed in vue3 v-if,but chartInstance exist
2026-01-21 11:47:01 +08:00
xingyu
8571fc43b0 Merge branch 'main' into fix 2026-01-19 15:28:12 +08:00
JyQAQ
59aabd956d Perf: Optimization of cropping component result acquisition & optimization of cropping frame prompts (#7111)
* perf(cropper): enhance image cropping functionality and add output type support

* perf(cropper): enhance image cropping functionality and add output type support
2026-01-19 14:18:36 +08:00
xingyu
9b09ba4483 Merge branch 'main' into fix 2026-01-19 10:54:43 +08:00
芋道源码
42f2fecb1e !320 完成 mall、bpm 的全部迁移
Merge pull request !320 from 芋道源码/dev
2026-01-18 10:12:49 +00:00
YunaiV
af0057940a feat:增加 allowedHosts 变量,允许 natapp 转发,对应 https://t.zsxq.com/kSg2A 2026-01-18 17:04:03 +08:00
YunaiV
9e3d75ae65 fix:【infra】代码生成:全选不生效的问题 2026-01-18 16:20:43 +08:00
YunaiV
e5f5523bc6 fix:外链是子菜单时,路径不正确的问题,对应 https://t.zsxq.com/aE8AX 问题 2026-01-18 14:46:56 +08:00
YunaiV
4cc900f542 review:【antd/ele】【mall】商城相关的代码 2026-01-18 14:43:49 +08:00
芋道源码
ce34e6e1a0 !319 feat: [bpm][antd] todo 修改
Merge pull request !319 from Jason/dev
2026-01-17 09:09:11 +00:00
jason
db1dfae481 feat: [bpm][antd] todo 修改 2026-01-17 15:47:31 +08:00
jason
012412ec22 feat: [bpm][antd] todo 修改 2026-01-17 15:31:54 +08:00
jason
db97d414ec feat: [bpm][antd] todo 流程监听器、流程表达式修改 2026-01-17 12:09:46 +08:00
haohao
8bf286fda0 refactor:【antd】【iot】将 DeviceSaveReqVO 和 DeviceRespVO 合并到 Device,简化设备 API 接口 2026-01-16 17:38:02 +08:00
xingyu
91119eac8e !318 fix:【ele/antd】修复更新个人信息后菜单丢失问题
Merge pull request !318 from zlflying/dev
2026-01-15 08:11:15 +00:00
橙子
686c3f9208 docs(@vben-core/preferences): update comments (#7107) 2026-01-14 19:36:45 +08:00
MRSWC
8a7e2bd8e4 fix:修复默认默认首页如果携带参数时刷新页面参数丢失问题 (#7102)
Co-authored-by: chenwei <chenw@jiuzhekan.com>
2026-01-14 15:38:55 +08:00
JyQAQ
174c4ae749 fix(antd Upload onChange Event): rewrite onChange event to handle upl… (#7098)
* fix(antd Upload onChange Event): rewrite onChange event to handle upload success or error messages

* fix(antd Upload onChange Event): rewrite onChange event to handle upload success or error messages

* fix(antd Upload onChange Event): rewrite onChange event to handle upload success or error messages
2026-01-14 15:38:21 +08:00
JyQAQ
67da9417a8 feat(upload prop:crop,aspectRatio): from Upload component accept prop… (#7095)
* feat(upload prop:crop,aspectRatio): from Upload component accept prop crop,aspectRatio

* feat(upload prop:crop,aspectRatio): from Upload component accept prop crop,aspectRatio

* feat(upload prop:crop,aspectRatio): from Upload component accept prop crop,aspectRatio

* feat(upload prop:crop,aspectRatio): from Upload component accept prop crop,aspectRatio
2026-01-14 15:38:05 +08:00
zlflying
d5b49e6a3b fix:【ele/antd】修复更新个人信息后菜单丢失问题
Signed-off-by: zlflying <zlflying@qq.com>
2026-01-14 14:44:17 +08:00
芋道源码
c894617e10 !317 修复一些 review TODO 提到的问题
Merge pull request !317 from puhui999/dev-mall
2026-01-13 12:27:48 +00:00
puhui999
10f4641fee fix:【ele/antd】修复 setup() 函数没有接收 props 参数,导致渲染函数中的 props 无法从 formCreate 传递 2026-01-13 12:37:13 +08:00
puhui999
c478bef269 feat:【ele】cropper todo 优化,对齐 antd 2026-01-13 12:32:00 +08:00
puhui999
0302b70c48 feat:【antd/ele】Element Plus 的 value-format="x" 返回的值可以直接赋值,不需要 Number() 转换,与 antd 版本保持一致 2026-01-13 12:25:27 +08:00
puhui999
2426f891e7 feat:【antd/ele】将文章的商品关联字段从手动输入 SPU 编号改为使用 SpuShowcase 组件选择商品 2026-01-13 12:13:22 +08:00
puhui999
e2433fc531 feat:【antd/ele】使用 productSpuIds 和 productCategoryIds 自定义插槽的表单在验证前同步 formData 中的值到表单中 2026-01-13 12:06:10 +08:00
puhui999
bbc74ae663 feat:【antd/ele】discountActivity 移除 structuredClone 使用 cloneDeep 2026-01-13 11:55:13 +08:00
puhui999
ea79b7d6a1 feat:【antd】cropper-modal 删除多余的 Image 预加载逻辑 2026-01-13 11:33:11 +08:00
ppxb
f4a4ced88d fix: header auto mode issue (#7096) 2026-01-12 21:40:26 +08:00
ppxb
19b2d7af41 fix: tdesign theme toggle and demos (#7087) 2026-01-10 14:11:08 +08:00
yuhengshen
343d8a1c1e fix: 切换时区后,页面不刷新 (#7085)
* fix: 切换时区后,页面不刷新

* fix: keep-alive 的页面,i18n 和 timezone 不更新
2026-01-10 14:10:27 +08:00
JyQAQ
9480f8272a feat(common-ui cropper): Implement the image cropping component VCropper (#7082)
* feat(common-ui cropper): Implement the image cropping component VCropper

* feat(common-ui cropper): Implement the image cropping component VCropper

* feat(common-ui cropper): Implement the image cropping component VCropper

* feat(common-ui cropper): Implement the image cropping component VCropper

* feat(common-ui cropper): Implement the image cropping component VCropper
2026-01-10 14:08:15 +08:00
ppxb
0d9e260a6a fix: vite.config.mts type error (#7081) 2026-01-10 14:07:28 +08:00
ppxb
51bca25345 fix(lint): pnpm format lint warning (#7080) 2026-01-10 14:06:03 +08:00
eric
694396dcfb refactor: move cleanup to finally block 2026-01-09 23:22:49 +08:00
eric
1cb53e943e refactor: 将跳转放到最后 2026-01-09 23:13:06 +08:00
eric
13c8318adc refactor: 1. 用 ref 包装 flag; 2. 在最后 清理 flag; 2026-01-09 23:05:05 +08:00
eric
48ed797055 fix: 防止 /logout 死循环 2026-01-09 22:38:11 +08:00
xingyu4j
3c2285141c chore: update deps 2026-01-06 13:58:42 +08:00
xingyu
49b884c0b1 Merge branch 'main' into fix 2026-01-06 13:50:26 +08:00
ppxb
24d20ca9ee refactor: preference manager and export (#7068)
* fix: preferences drawer outline z-index

* refactor: preferencesManager and exports
2026-01-06 12:42:32 +08:00
wyc001122
6f02181024 fix(layout): 修复双列模式下重复显示logo的问题(#7071) (#7072) 2026-01-05 21:13:06 +08:00
YunaiV
17d5d1b889 review:【antd】【iot】设备管理相关 2026-01-05 20:45:39 +08:00
芋道源码
a5c76ef89d !315 refactor:【antd】【iot】设备管理跟后端对齐,必要的 ReqVO、RespVO,子设备管理实现
Merge pull request !315 from haohaoMT/dev
2026-01-05 12:10:39 +00:00
YunaiV
e622c052a9 feat:【antd/ele】菜单支持查询参数、iframe 内嵌功能 2026-01-05 19:35:01 +08:00
ppxb
ed3353a271 fix: preferences drawer outline z-index (#7067) 2026-01-04 14:44:33 +08:00
haohao
de28c5c4c2 refactor:【antd】【iot】设备管理跟后端对齐,必要的 ReqVO、RespVO,子设备管理实现 2026-01-04 12:25:25 +08:00
xingyu4j
965f5f96b7 chore: update deps 2026-01-04 11:03:19 +08:00
xingyu4j
61d9df7f58 feat: add cascader cspell:words 2026-01-04 11:00:07 +08:00
xingyu4j
231a5169ec fix: lint 2026-01-04 10:56:55 +08:00
xingyu4j
ce7b7b910a Merge branch 'main' of https://github.com/xingyu4j/vue-vben-admin into fix 2026-01-04 10:56:14 +08:00
YunaiV
f7f01c9280 feat:【antd/ele】生产环境下,默认开启 CAPTCHA 验证码,保证安全性 2026-01-03 19:20:25 +08:00
JyQAQ
81a61558cb feat(upload prop:maxSize): from Upload component accept prop maxSize (AI prompt fixed) (#7059)
* feat(upload prop:maxSize): from component accept prop maxSize

* feat(upload prop:maxSize): from component accept prop maxSize

* feat(upload prop:maxSize): from component accept prop maxSize

* feat(upload prop:maxSize): from component accept prop maxSize
2026-01-03 13:19:40 +08:00
YunaiV
a9f21c1acb feat:【system】菜单管理:增加 visible 管理字段 2026-01-02 19:50:38 +08:00
YunaiV
19c7f0d5dd feat: 【框架】更新 operate-log 的实现 2026-01-02 19:44:09 +08:00
YunaiV
cd43149429 review:【antd/ele】【bpm】流程模型的迁移 2026-01-02 18:49:47 +08:00
YunaiV
19919f6685 Merge remote-tracking branch 'origin/dev' into dev
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2026-01-02 18:29:54 +08:00
YunaiV
036ef294db feat:【infra】代码生成:字典筛选时,支持 key、name 两种类型 2026-01-02 18:12:23 +08:00
ppxb
7d2bc2e885 fix: dropdown raido menu type error (#7062)
* fix: dropdown raido menu type

* chore: format code
2026-01-02 14:25:19 +08:00
luoqiz
89b237f6b4 feat: 添加上下文菜单演示,添加菜单项隐藏性 (#7057)
Co-authored-by: luoqiz <851092732@qq.com>
2026-01-02 14:22:19 +08:00
芋道源码
d8f685708d !314 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !314 from Jason/dev
2026-01-01 13:27:55 +00:00
jason
f8ce09a203 Merge remote-tracking branch 'yudao/dev' into dev 2025-12-31 11:02:11 +08:00
jason
59d83d29cb feat: [bpm][ele] bpm oa 请假迁移 2025-12-31 11:00:13 +08:00
jason
02193755be feat: [bpm][antd] oa 请假优化 2025-12-31 00:04:40 +08:00
芋道源码
6d524906a3 !313 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !313 from Jason/dev
2025-12-29 14:43:47 +00:00
jason
cbd1f0bcbb Merge remote-tracking branch 'yudao/dev' into dev 2025-12-29 11:53:00 +08:00
jason
2ba2c8e986 feat: [bpm] [ele,antd] todo 优化, 更多设置问题修复 2025-12-29 11:51:48 +08:00
YunaiV
06f1ae1a66 review:【mall】营销相关 2025-12-29 08:17:35 +08:00
YunaiV
029b2ffaab review:【antd/ele】【mall】营销活动的实现 2025-12-29 07:03:00 +08:00
jason
64ac25de00 Merge remote-tracking branch 'yudao/dev' into dev 2025-12-29 00:12:30 +08:00
jason
6606dfd40a feat: [bpm][ele] todo 优化 2025-12-29 00:09:22 +08:00
芋道源码
6da4a39ff9 !312 feat:【ele/antd】mall todo 优化
Merge pull request !312 from puhui999/dev-mall
2025-12-28 13:23:18 +00:00
puhui999
aa95d0e87c feat:【ele/antd】profile todo 优化 2025-12-28 18:55:07 +08:00
puhui999
6353f0a8e9 feat:【ele/antd】discountActivity todo 优化 2025-12-28 18:34:28 +08:00
puhui999
e6327ae9da feat:【ele】spu todo 优化 2025-12-28 17:57:10 +08:00
puhui999
4395353c22 feat:【ele/antd】rewardActivity todo 优化 2025-12-28 17:35:43 +08:00
puhui999
c023ebbdb9 feat:【ele】cropper、form-create\rules todo 优化 2025-12-28 15:44:21 +08:00
芋道源码
9be7bb5065 !311 (〃'▽'〃) v2025.12 发布:极大极大完善 vben5 的 antd、vben 版本的功能,新增 admin uniapp vue3 版本
Merge pull request !311 from 芋道源码/dev
2025-12-28 03:08:53 +00:00
YunaiV
63a8d562ce feat:【antd/ele】文件上传的组件优化 2025-12-27 18:50:42 +08:00
YunaiV
a109168c66 fix:【pay】修复钱包支付、模拟支付配置的修改报错问题 2025-12-27 17:29:08 +08:00
YunaiV
304f2442eb feat:【antd/ele】【infra】统一 cron-tab 的封装 2025-12-27 17:13:40 +08:00
YunaiV
826a1b355a feat:【antd/ele】对齐两侧的代码 2025-12-27 17:06:15 +08:00
YunaiV
9ef218f930 refactor: 【crm】【antd/ele】提取图表配置生成函数,统一 legend/grid/tooltip 处理,优化饼图面板生成 2025-12-27 17:02:11 +08:00
YunaiV
5a5d2f17da feat:【bpm】【antd/ele】业务表单,支持重新发起流程 2025-12-27 12:49:14 +08:00
芋道源码
70f075b003 !310 chore: new tag
Merge pull request !310 from xingyu/dev
2025-12-27 03:40:30 +00:00
xingyu4j
ab7b77989f fix: lint 2025-12-26 14:25:55 +08:00
xingyu4j
eacff553bd docs: README 2025-12-26 14:18:47 +08:00
xingyu4j
331cb2ca70 fix: sort 2025-12-26 14:18:38 +08:00
xingyu4j
703561ea33 chore: update deps 2025-12-26 14:18:29 +08:00
xingyu4j
c32a4c3e05 feat: remove playground 2025-12-26 14:11:34 +08:00
xingyu4j
77cd814c99 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-12-26 14:00:55 +08:00
芋道源码
3908f03418 !309 feat:【antd】【ele】大量更新同步
Merge pull request !309 from 芋道源码/dev
2025-12-26 01:03:05 +00:00
YunaiV
68bb90a503 review:【antd】【iot】代码实现 2025-12-25 09:19:17 +08:00
YunaiV
11b5068e91 review:【antd】【bpm】评审流程详情界面 2025-12-25 00:58:16 +08:00
芋道源码
cb8a633f1f !308 refactor:【antd】【iot】代码优化
Merge pull request !308 from haohaoMT/dev
2025-12-22 14:21:49 +00:00
JyQAQ
a1bb132233 feat(api-cascader): 添加联级组件ApiCascader (#7031) 2025-12-22 20:00:31 +08:00
zhenghaoyang24
022d538940 Fix formatting in thin.md for clarity (#7008)
修改一些语句错误
2025-12-22 19:58:05 +08:00
xueyitt
ccf70a1b76 feat: 修正菜单排序在二级菜单不生效问题 (#7007)
* treeUtil增加对树形结构数据进行递归排序

* 菜单sort排序各级菜单均生效
2025-12-22 19:57:21 +08:00
xingyu4j
af3fe53ec8 fix: type error 2025-12-22 17:50:06 +08:00
xingyu4j
e981fb159f chore: update deps 2025-12-22 17:49:51 +08:00
haohao
6bf9acbfb2 refactor:【antd】【iot】代码优化 2025-12-22 17:30:59 +08:00
xingyu
79b9d55854 Merge branch 'main' into fix 2025-12-22 16:42:15 +08:00
YunaiV
13f81b3130 review:【antd】【iot】代码实现 2025-12-21 23:04:57 +08:00
YunaiV
835da00f2c review:【antd/ele】【bpm】流程模型的迁移 2025-12-21 22:41:03 +08:00
YunaiV
bc654c9d45 fix:【ele】【mall】商品列表的“商品分类”不展示的问题,对应 https://t.zsxq.com/JCOWV 2025-12-21 21:24:59 +08:00
YunaiV
0f864b22c1 fix:【ele】【infra】代码生成时,无法选中菜单,对应 https://t.zsxq.com/xZ4fL 2025-12-21 21:15:49 +08:00
芋道源码
08f6cb7d14 !305 fix: [ele] 树形控件展开和选择属性配置问题
Merge pull request !305 from Lcp/dev
2025-12-21 12:53:39 +00:00
YunaiV
3ea5510a21 review:【antd/ele】【mall】营销模块的迁移 2025-12-21 20:50:27 +08:00
芋道源码
a3f282cba3 !307 mall 商城优化完善
Merge pull request !307 from puhui999/dev-mall
2025-12-21 11:13:33 +00:00
YunaiV
7ab917dc48 fix:【system】邮箱移除无用的 remark 字段及相关表单项 2025-12-20 20:48:24 +08:00
YunaiV
e850ffb038 fix:【bpm】修复流程模型的业务表单,路径的 tooltip 不对 2025-12-20 15:11:54 +08:00
芋道源码
1fc39e3fbb !306 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !306 from Jason/dev
2025-12-20 07:10:35 +00:00
puhui999
568d5aa4cf feat:【antd】【mall】修复满减送编辑时表单打开异常的问题,原因:antd RangePicker 需要 dayjs 对象 2025-12-20 11:35:01 +08:00
puhui999
535c82c844 feat:【ele】【mall】seckill 代码对齐 antd 2025-12-20 11:20:34 +08:00
puhui999
c1b1343794 feat:【ele】【mall】rewardActivity 代码对齐 antd 2025-12-20 11:11:00 +08:00
puhui999
41f0a9465d feat:【ele】【mall】point 代码对齐 antd 2025-12-20 10:59:40 +08:00
puhui999
a7054ec09c feat:【ele】【mall】coupon 代码对齐 antd 2025-12-20 10:46:59 +08:00
puhui999
ebf7221fd2 feat:【ele】【mall】ElDialog :append-to-body="true" 2025-12-20 10:40:27 +08:00
puhui999
fad560db52 feat:【ele】【mall】discountActivity 代码对齐 antd 2025-12-20 10:36:50 +08:00
puhui999
503ed01c57 feat:【ele】【mall】combination 代码对齐 antd 2025-12-20 10:32:38 +08:00
puhui999
b9466282fc feat:【ele】【mall】bargain 代码对齐 antd 2025-12-20 10:10:19 +08:00
puhui999
d3a7a874a6 feat:【ele】【mall】comment 代码对齐 antd 2025-12-20 10:04:24 +08:00
YunaiV
d4b99f321d fix:【system】登录日志的“操作类型”改为“登录类型” 2025-12-20 09:23:34 +08:00
puhui999
e1e0554aca feat:【ele】【mall】spu 代码对齐 antd 2025-12-20 09:13:38 +08:00
puhui999
f429e74e79 feat:【antd】【mall】point 优化完善 2025-12-20 08:56:32 +08:00
puhui999
f99d708c97 feat:【antd】【mall】rewardActivity 优化完善 2025-12-20 08:53:47 +08:00
puhui999
57855eff06 feat:【antd】【mall】seckill 优化完善 2025-12-20 08:40:09 +08:00
puhui999
348cc35aec feat:【antd】【mall】combination 优化完善 2025-12-20 08:33:40 +08:00
puhui999
6922ab13fc feat:【antd】【mall】bargain 优化完善 2025-12-20 08:24:30 +08:00
jason
01dd8171e9 Merge remote-tracking branch 'yudao/dev' into dev 2025-12-18 23:32:39 +08:00
jason
0d043bca94 feat: [bpm][ele] bpmn 设计器问题修复 2025-12-18 23:28:59 +08:00
jason
9504fa3980 feat: [bpm][ele] bpmn 设计器流程监听器选择弹窗组件 2025-12-18 23:27:38 +08:00
jason
a91be61c21 feat: [bpm][ele] bpmn 设计器流程表达式选择弹窗组件 2025-12-18 23:25:37 +08:00
jason
b18353e171 feat: [bpm][ele] bpmn 设计器时间事件配置优化 2025-12-18 11:15:35 +08:00
xingyu4j
b2055a4457 chore: update deps 2025-12-17 13:47:37 +08:00
YunaiV
fbcb498f5b feat:【system】操作日志增加 userType 的展示 2025-12-17 13:13:22 +08:00
Liu
32263c2b09 fix: [ele] 树形控件展开和选择属性配置问题 2025-12-17 11:12:51 +08:00
芋道源码
2202ef3b3c !304 refactor:【antd】【iot】重构设备详情页面,优化组件结构与路径,优化设备配置、属性、事件管理等功能
Merge pull request !304 from haohaoMT/dev
2025-12-16 14:55:09 +00:00
haohao
191e15975c refactor:【antd】【iot】重构设备详情页面,优化组件结构与路径,优化设备配置、属性、事件管理等功能 2025-12-16 16:45:35 +08:00
YunaiV
eb17976e96 merge: 合并远程 origin/dev 分支代码 2025-12-16 13:35:38 +08:00
YunaiV
70982eff92 fix:【ele】promotion activity 漏了一个 } 导致报错 2025-12-16 13:33:26 +08:00
芋道源码
5532f59c40 !303 refactor:【antd】【iot】统一列表视图和卡片视图的查询接口
Merge pull request !303 from haohaoMT/dev
2025-12-16 05:28:16 +00:00
haohao
439a35c165 refactor:【antd】【iot】统一列表视图和卡片视图的查询接口 2025-12-16 09:58:16 +08:00
芋道源码
42bdc15df5 !302 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !302 from Jason/dev
2025-12-16 00:55:46 +00:00
haohao
3744069aa2 refactor:【antd】【iot】产品详情修改路径到 detail 2025-12-15 22:48:09 +08:00
jason
936e127c0d Merge remote-tracking branch 'yudao/dev' into dev 2025-12-15 22:42:17 +08:00
jason
ba126288a0 feat: [bpm][ele] bpmn 设计器 用户任务配置迁移优化 2025-12-15 22:39:59 +08:00
芋道源码
1d8d70e71a !301 refactor:【antd】【iot】更新首页必要的 ReqVO、RespVO
Merge pull request !301 from haohaoMT/dev
2025-12-15 14:28:31 +00:00
haohao
5cb412a4da refactor:【antd】【iot】更新首页必要的 ReqVO、RespVO 2025-12-15 21:51:09 +08:00
jason
dde16e26fe feat: [bpm][ele] bpmn 设计器迁移 2025-12-15 21:21:54 +08:00
jason
ca8ac99b6e feat: [bpm][ele] bpmn 设计器迁移 2025-12-15 21:03:28 +08:00
YunaiV
e3c1676523 review:【antd/ele】【mall】商品模块的迁移 2025-12-15 19:44:11 +08:00
YunaiV
4ec82f0fd0 review:【antd/ele】【mall】营销模块的迁移 2025-12-15 19:29:47 +08:00
芋道源码
ef0f0a9a9d !300 feat:【ele】【mall】promotion 代码迁移
Merge pull request !300 from puhui999/dev-mall
2025-12-15 09:01:19 +00:00
puhui999
b36c3c4209 feat:【ele】【mall】combination 代码迁移 2025-12-15 16:26:23 +08:00
puhui999
f137a66b6c feat:【ele】【mall】bargain 代码迁移 2025-12-15 16:18:14 +08:00
puhui999
e8526674c5 feat:【ele】【mall】seckill 代码迁移 2025-12-15 16:16:50 +08:00
puhui999
5417b19a8b feat:【ele】【mall】spu 选择组件优化 2025-12-15 16:07:47 +08:00
puhui999
e0d3fac19e feat:【ele】【mall】rewardActivity 代码迁移 2025-12-15 15:55:56 +08:00
puhui999
f943b175eb feat:【ele】【mall】point 代码迁移 2025-12-15 15:29:37 +08:00
YunaiV
3088fb3d46 review:【antd/ele】【MP】代码迁移的 review 2025-12-15 14:27:09 +08:00
芋道源码
43f3303ad2 !299 Merge branch 'dev' of <a href="https://gitee.com/yudaocode/yudao-ui-admin-vben">https://gitee.com/yudaocode/yudao-ui-admin-vben</a> into dev
Merge pull request !299 from dylanmay/dev
2025-12-15 06:17:56 +00:00
dylanmay
bdf1c293bd Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-12-15 10:18:46 +08:00
dylanmay
12b0575ca1 fix: resolve todo 2025-12-15 10:13:13 +08:00
puhui999
3102eb511f feat:【ele】【mall】spu 代码迁移 2025-12-14 16:35:58 +08:00
puhui999
d8c87c0f7c feat:【antd】【mall】砍价活动商品选择优化 2025-12-14 15:05:46 +08:00
puhui999
f849f3ad3d feat:【antd】【mall】拼团活动商品选择优化 2025-12-14 14:59:24 +08:00
芋道源码
47dfccd9eb Merge pull request #187 from solante1012/dev
fix: [bpm][antd] BPM 设计器用户任务, 点击查不到数据问题
2025-12-13 10:27:01 +08:00
芋道源码
1d0b14bbe5 !298 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !298 from Jason/dev
2025-12-13 01:15:08 +00:00
jason
07c8763fae Merge remote-tracking branch 'yudao/dev' into dev 2025-12-13 00:43:26 +08:00
jason
8df5fbc843 feat: [bpm][antd] bpmn 设计器时间事件定义优化 2025-12-13 00:39:00 +08:00
chencan
51ce864dbd fix: [bpm][antd] BPM 设计器用户任务, 点击查不到数据问题 2025-12-12 15:12:39 +08:00
jason
d50b9fae60 fix: [bpm][antd] bpmn 设计器审批人超时未处理自定义配置问题修复 2025-12-12 13:36:50 +08:00
jason
0db2710e80 fix: [bpm][antd] bpmn 设计器流转条件问题修复 2025-12-11 18:05:58 +08:00
芋道源码
380f74015e !297 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !297 from Jason/dev
2025-12-09 15:26:58 +00:00
jason
2fc76789e2 Merge remote-tracking branch 'yudao/dev' into dev 2025-12-09 23:15:54 +08:00
jason
43ed7aeefb feat: [bpm][antd] bpmn 设计器子流程调用问题修复 2025-12-09 23:14:35 +08:00
jason
28e4305916 feat: [bpm][antd] bpm 设计器接收任务优化 2025-12-09 20:20:47 +08:00
芋道源码
223be87dc8 !296 feat: [bpm][antd] bpmn设计器脚本任务优化
Merge pull request !296 from Jason/dev
2025-12-09 01:11:31 +00:00
jason
70bcc5ea0f feat: [bpm][antd] bpmn设计器脚本任务优化 2025-12-08 23:41:34 +08:00
jason
fba43de19f fix: [bpm][antd] bpm设计器 ServiceTask 问题修复 2025-12-08 22:55:27 +08:00
YunaiV
f1c7a4ebfb review:【antd】【BPM】代码迁移的 review 2025-12-08 08:59:55 +08:00
芋道源码
67ed1753a7 !295 feat: [bpm][antd] bpm设计器 用户任务自定义配置优化
Merge pull request !295 from Jason/dev
2025-12-08 00:54:24 +00:00
jason
1c17746864 feat: [bpm][antd] bpm设计器 用户任务自定义配置优化 2025-12-08 00:01:44 +08:00
jason
2cf7e70b70 feat: [bpm][antd] bpm设计器 多人审批方式优化 2025-12-07 23:59:50 +08:00
jason
cfb9a9b3c9 fix: 冲突解决 2025-12-07 21:22:27 +08:00
YunaiV
2a4c774aca review:【antd/ele】【iot】代码迁移的 review 2025-12-07 16:36:55 +08:00
芋道源码
250109507f !294 refactor:【antd】【iot】将物联网设备和产品枚举整合为常量,优化设备导入功能,简化设备管理UI组件
Merge pull request !294 from haohaoMT/dev
2025-12-07 04:53:11 +00:00
YunaiV
03d25bf85a review:【antd/ele】【mp】代码迁移的 review 2025-12-07 12:51:51 +08:00
芋道源码
2fc86b7bda !292 fix: todo 处理
Merge pull request !292 from dylanmay/dev
2025-12-07 04:36:19 +00:00
YunaiV
274aa7da73 fix: 【bpm】bpmn设计器: 消息与信号不能保存,对应issure:#202 #206【同步自 vue3 + element-plus】 2025-12-07 12:28:24 +08:00
YunaiV
7366b948a3 fix: 【bpm】bpmn设计器: 组件部分属性第一次失去焦点丢失数据问题 #204 【同步自 vue3 + element-plus】 2025-12-07 12:26:03 +08:00
jason
89f93d0291 feat: [bpm][antd] bpm 设计器消息与信号,文档描述优化 2025-12-06 21:56:27 +08:00
haohao
2b270caf30 refactor:【antd】【iot】将物联网设备和产品枚举整合为常量,优化设备导入功能,简化设备管理UI组件 2025-12-06 17:54:46 +08:00
jason
21b5dc255e fix: [bpm][antd] bpm 设计器添加属性问题修复 2025-12-06 16:59:02 +08:00
JyQAQ
1479f159aa feat(CellImage): CellImage组件支持图片属性写入 (#6992) 2025-12-06 10:12:58 +08:00
jason
5e1abfb08a Merge remote-tracking branch 'yudao/dev' into dev 2025-12-05 22:54:07 +08:00
jason
604517b2ab feat: [bpm][antd] bpm 设计器执行监听器优化 2025-12-05 22:52:42 +08:00
jason
d3cfc67bd7 feat: [bpm][antd] BPM 设计器选择监听器 2025-12-05 21:24:32 +08:00
xingyu4j
7bf7e09002 fix: lint 2025-12-05 15:09:43 +08:00
xingyu4j
de8d39ffed chore: workspace file is deprecated 2025-12-05 15:07:39 +08:00
xingyu4j
543a7e3962 chore: update deps 2025-12-05 14:55:44 +08:00
dylanmay
5bae28516c fix: todo 处理 2025-12-05 11:00:48 +08:00
dylanmay
5a6122ab75 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-12-05 09:37:41 +08:00
dylanmay
5021f2487d fix: ele mp 素材管理 2025-12-05 09:35:49 +08:00
jason
75a2b331b7 feat: [bpm][antd] 用户和部门选择组件位置优化 2025-12-04 22:35:40 +08:00
xingyu4j
9dfe3f5af8 fix: type not find 2025-12-04 18:03:55 +08:00
xingyu4j
f11b08d8cb chore: update deps 2025-12-04 17:59:12 +08:00
xingyu
cc375100cb !290 refactor:【antd】【iot】产品管理问题修复
Merge pull request !290 from haohaoMT/dev
2025-12-04 03:07:26 +00:00
xingyu
dea8bf4631 !291 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !291 from Jason/dev
2025-12-04 03:05:40 +00:00
jason
d7d883a54c Merge remote-tracking branch 'yudao/dev' into dev 2025-12-03 23:57:54 +08:00
jason
943a8e0cee fix: [bpm][antd] BPM 设计器任务监听器问题修复 2025-12-03 23:55:28 +08:00
xingyu4j
45b6f08984 chore: neverBuiltDependencies 2025-12-03 16:34:14 +08:00
xingyu4j
92a4676f8d chore: update version 2025-12-03 16:27:14 +08:00
xingyu4j
7bf7c0bb06 chore: remove unused deps 2025-12-03 16:26:58 +08:00
xingyu4j
8f8cf5b704 chore: update deps 2025-12-03 16:22:14 +08:00
xingyu4j
6be238430d chore: add cspell 2025-12-03 16:12:08 +08:00
xingyu4j
f77216d8f4 feat: lint add pnpm config 2025-12-03 16:11:51 +08:00
xingyu4j
d42a9b2409 feat: lint add yaml config 2025-12-03 16:01:27 +08:00
xingyu4j
6753834054 fix: lint 2025-12-03 15:37:33 +08:00
xingyu4j
77a4a64eb4 fix: stylelint 2025-12-03 15:37:20 +08:00
xingyu4j
49db40d557 feat: cspell sort 2025-12-03 15:37:04 +08:00
xingyu4j
0032c608f1 chore: update deps 2025-12-03 15:36:43 +08:00
xingyu4j
fa603b32b1 fix: locales 2025-12-03 13:51:30 +08:00
JyQAQ
9105d4d14a feat(api-component): api-component组件的options支持指定disabled值 (#6991) 2025-12-03 10:03:23 +08:00
haohao
62b12235f7 refactor:【antd】【iot】产品管理问题修复 2025-12-02 17:54:18 +08:00
haohao
00ee233f14 refactor:【antd】【iot】设备分组和产品分类表单简化 2025-12-02 16:17:00 +08:00
芋道源码
ae1c75ae9a !289 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !289 from Jason/dev
2025-12-01 16:50:15 +00:00
jason
b94513dee4 Merge remote-tracking branch 'yudao/dev' into dev 2025-12-01 20:47:51 +08:00
YunaiV
16f9057e1c review:【antd】【mall】diy 店铺装修 2025-12-01 19:40:07 +08:00
芋道源码
60400525cc !287 fix: ele wx-material-select组件同步
Merge pull request !287 from hw/dev
2025-12-01 11:23:59 +00:00
YunaiV
c05463ca0a review:【antd】【mall】营销活动的商品选择 2025-12-01 19:21:30 +08:00
YunaiV
a2e6e5097d review:【antd】【mall】营销活动的商品选择 2025-12-01 19:20:28 +08:00
芋道源码
68fc2f6a33 !288 feat:【antd】【mall】商城活动优化
Merge pull request !288 from puhui999/dev-mall
2025-12-01 10:54:59 +00:00
puhui999
a5b51f45da feat:【antd】【mall】商城活动优化 2025-12-01 18:37:05 +08:00
xingyu4j
05c064a250 fix: lint 2025-12-01 17:03:38 +08:00
xingyu4j
d16ebea639 fix: #ID9R98 2025-12-01 16:56:22 +08:00
jason
29e79448e4 feat: [bpm][antd] todo 修改, 一些优化 2025-12-01 15:53:57 +08:00
hw
a9a075346f fix: 【装修】todo修复 2025-12-01 15:48:27 +08:00
jason
0731999e7d feat: [bpm][antd] bpmn 设计器问题修复 2025-12-01 12:52:18 +08:00
hw
aedcf2d05c fix: ele wx-material-select组件同步 2025-12-01 10:40:36 +08:00
luoqiz
c76db7d8d1 fix: 修复icon丢失根属性导致的样式错误 (#6986) 2025-12-01 09:51:27 +08:00
芋道源码
df7135b288 !286 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !286 from Jason/dev
2025-11-30 02:07:47 +00:00
jason
867ebf2967 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-30 00:12:03 +08:00
jason
56669b134c feat: [bpm][ele] bpm 迁移优化 2025-11-30 00:10:54 +08:00
jason
e18bbca376 feat: [bpm][ele] bpm 迁移优化 2025-11-30 00:08:25 +08:00
YunaiV
86894d6e66 fix:【antd】【bpm】simple 设计器:画布的 CSS transition 属性以解决拖拽卡顿问题,来自:https://github.com/yudaocode/yudao-ui-admin-vue3/pull/173 2025-11-29 19:51:19 +08:00
YunaiV
2548db3fda feat:【antd】【bpm】bpmn 设计器:服务任务中新增执行类型,来自:https://github.com/yudaocode/yudao-ui-admin-vue3/pull/200/ 2025-11-29 18:46:40 +08:00
YunaiV
3f9dc0becc feat:【antd】【bpm】bpmn 设计器:修复一些bpmn-js标签typo问题,新增一些翻译,来自:https://github.com/yudaocode/yudao-ui-admin-vue3/pull/201 2025-11-29 18:36:58 +08:00
YunaiV
22aefe72f4 feat:【antd】【bpm】bpmn 设计器:优化 消息和信号 的新增,自动生成符合BPMN规范的id,来自:https://github.com/yudaocode/yudao-ui-admin-vue3/pull/203 2025-11-29 18:30:23 +08:00
YunaiV
6c9affae76 feat:【antd】【bpm】bpmn 设计器:工作流节点操作按钮的操作不起作用,来自:9f1c4f2578 2025-11-29 18:14:41 +08:00
YunaiV
71c80efab0 feat:【antd】【bpm】bpmn 设计器:增加消息与信号的编辑、删除功能,来自:c568d45180 2025-11-29 18:09:49 +08:00
YunaiV
f7ce553771 feat:【antd】【bpm】bpmn 设计器:bpmn 设计器:使用定时中间捕获事件,部署流程图提示校验失败:flowable-event-timer-missing-configuration,来自:b666e1bdd4 2025-11-29 18:05:03 +08:00
YunaiV
f9913692f0 feat:【antd】【bpm】bpmn 设计器:保留非监听器类型的扩展属性,避免移除监听器时清空其他配置,来自:33e489ebfc 2025-11-29 18:01:22 +08:00
YunaiV
72bbfd4a9c fix:【infra】数据源 id = 0 可以被编辑的错误 2025-11-29 16:12:38 +08:00
YunaiV
7aab11b984 feat:【system】支付宝小程序登录补充 2025-11-29 16:06:23 +08:00
YunaiV
09300af7bc feat:【infra】文件配置,增加 region 区域 2025-11-29 15:59:55 +08:00
YunaiV
6fb3480676 review:【antd/ele】【mp】代码迁移的 review 2025-11-29 11:54:15 +08:00
芋道源码
3409a8a88f !284 Merge branch 'dev' of <a href="https://gitee.com/yudaocode/yudao-ui-admin-vben">https://gitee.com/yudaocode/yudao-ui-admin-vben</a> into dev
Merge pull request !284 from dylanmay/dev
2025-11-29 03:34:46 +00:00
YunaiV
bdb63cb293 review:【antd】【mall】店铺装修 2025-11-29 11:32:37 +08:00
YunaiV
0ffebd6de4 feat:【antd】【mall】优化满减送的界面 2025-11-29 11:17:37 +08:00
YunaiV
56409edff4 Merge remote-tracking branch 'origin/dev' 2025-11-29 10:42:13 +08:00
YunaiV
d868e4abfc review:【antd】【mall】商品选择相关逻辑 2025-11-29 10:30:48 +08:00
xingyu
65b210faf6 !285 !283 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !285 from xingyu/dev
2025-11-28 10:12:18 +00:00
dylanmay
6214c33c86 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-28 15:51:53 +08:00
dylanmay
1dc2a31f84 fix: resolve ele to do 2025-11-28 15:42:19 +08:00
dylanmay
0d0d9e30c0 fix: resolve antd to do 2025-11-28 15:41:17 +08:00
dylanmay
ffc48fa171 fix: resolve antd to do 2025-11-28 15:39:39 +08:00
xingyu
8fa541ac95 !283 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !283 from Jason/dev
2025-11-28 02:34:23 +00:00
jason
86efe618de Merge remote-tracking branch 'yudao/dev' into dev 2025-11-28 09:13:09 +08:00
jason
c9d917b649 feat: [bpm][ele] 发起流程迁移 2025-11-28 00:26:42 +08:00
YunaiV
6a8f60957d review:【antd/ele】【mall】代码迁移的 review 2025-11-27 17:58:54 +08:00
芋道源码
271923999c !282 feat:【antd】【mall】满减送组件优化
Merge pull request !282 from puhui999/dev-mall
2025-11-27 09:54:39 +00:00
puhui999
33c7f38ec3 feat:【antd】【mall】满减送组件优化 2025-11-27 17:50:07 +08:00
xingyu4j
1f212e7e6a Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-27 17:25:13 +08:00
puhui999
07c209bd1d feat:【antd】【mall】满减送组件优化 2025-11-27 17:20:12 +08:00
YunaiV
7d9285de96 review:【antd/ele】【mp】代码迁移的 review 2025-11-27 16:24:39 +08:00
xingyu4j
d558ebe510 fix: todo 比较通用 2025-11-27 14:08:17 +08:00
xingyu4j
0ab23a98d8 fix: todo 比较通用的功能 2025-11-27 14:07:00 +08:00
xingyu4j
7fea95adff fix: lint 2025-11-27 13:55:12 +08:00
xingyu
a976ca88f6 !281 Merge branch 'dev' of <a href="https://gitee.com/yudaocode/yudao-ui-admin-vben">https://gitee.com/yudaocode/yudao-ui-admin-vben</a> into dev
Merge pull request !281 from dylanmay/dev
2025-11-27 05:33:41 +00:00
dylanmay
6c5a65a6bd Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-27 12:17:53 +08:00
xingyu4j
8d9d60b960 fix: ele build error 2025-11-27 11:27:42 +08:00
xingyu4j
80c61f00eb fix: build error 2025-11-27 11:24:07 +08:00
xingyu4j
08eb0d6bc0 fix: build error 2025-11-27 11:22:19 +08:00
xingyu4j
dcb491dfa8 fix: build error 2025-11-27 11:22:17 +08:00
xingyu4j
45449475e3 chore: deps 2025-11-27 11:08:23 +08:00
xingyu4j
219c8e19c4 fix: tailwindcss style 2025-11-27 11:05:57 +08:00
xingyu4j
1a18c5c771 fix: tailwindcss style 2025-11-27 11:05:04 +08:00
xingyu4j
8e2c85770c fix: lint 2025-11-27 11:04:41 +08:00
xingyu4j
54bd498f24 fix: tailwindcss style 2025-11-27 11:04:23 +08:00
xingyu4j
9ce498f269 fix: lint 2025-11-27 11:03:49 +08:00
dylanmay
5374e64bcb fix: resolve todo 2025-11-27 09:55:24 +08:00
芋道源码
631c098c11 !280 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !280 from Jason/dev
2025-11-26 15:13:19 +00:00
jason
8fa9366a19 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-26 22:50:12 +08:00
jason
fe8d13da66 feat: [bpm][ele] 流程/任务详情迁移 2025-11-26 22:49:00 +08:00
jason
ac305676d8 feat: [bpm][ele] 流程/任务详情迁移 2025-11-26 22:46:38 +08:00
YunaiV
03e5bf5c3d fix:【antd】构建失败的问题 2025-11-26 19:24:49 +08:00
YunaiV
4af433e4d7 review:【antd/ele】代码迁移的 review 2025-11-26 19:17:55 +08:00
芋道源码
d5e2afdb55 !279 fix: 图文草稿箱样式调整、todo修复
Merge pull request !279 from hw/dev
2025-11-26 11:08:51 +00:00
YunaiV
3cb0afe319 feat:【ele】【mp】模版消息的新增 2025-11-26 19:08:09 +08:00
YunaiV
672a6c9ccc feat:【antd】【mp】模版消息的新增 2025-11-26 19:05:08 +08:00
puhui999
4f45438e11 feat:【antd】【mall】积分商城活动优化 2025-11-26 16:40:13 +08:00
puhui999
0ded54872b fix:【antd】【mall】优化修复 spu-and-sku-list 选择器 2025-11-26 16:34:14 +08:00
puhui999
ea57b64795 fix:【antd】【mall】优化修复 sku-table-select 选择器 2025-11-26 16:30:30 +08:00
hw
0b2d35fc67 fix: 草稿箱行内样式修改 2025-11-26 15:44:00 +08:00
hw
c014f2a188 fix: 图文草稿箱样式调整、todo修复 2025-11-26 10:46:24 +08:00
芋道源码
4be5f8f799 !278 fix: 修复freePublish list类型错误
Merge pull request !278 from jawe/dev
2025-11-26 02:22:31 +00:00
YunaiV
2401559fa5 review:【antd】【mall】商品发布的迁移 2025-11-26 10:21:19 +08:00
芋道源码
58e8a71936 !277 feat:【antd】【mall】spu 优化
Merge pull request !277 from puhui999/dev-mall
2025-11-26 01:58:40 +00:00
jawe
6a95ed1af0 fix: 修复freePublish list类型错误 2025-11-26 09:53:26 +08:00
puhui999
c6ef772f93 fix:【antd】【mall】完善评论商品选择 2025-11-25 23:36:17 +08:00
puhui999
9b521cff90 fix:【antd】【mall】业务弹窗选择组件的 Modal 改成使用 antd 自己的。原因是 vben modal 嵌套关闭一个会全都关闭。 2025-11-25 21:29:35 +08:00
YunaiV
eb27bd5c6d review:【antd/ele】代码迁移的 review 2025-11-25 21:13:46 +08:00
YunaiV
b4a679dd08 feat: 【antd/ele】【infra】表单设计器:添加返回值类型配置到部门选择器 2025-11-25 20:09:06 +08:00
puhui999
c1fa433348 fix:【antd】【mall】业务弹窗选择组件的 Modal 改成使用 antd 自己的。原因是 vben modal 嵌套关闭一个会全都关闭。 2025-11-25 19:02:56 +08:00
puhui999
58e958fd87 fix:【antd】【mall】sku-list 为选择列(checkbox)添加了 fixed="left" 属性,确保它始终固定在第一列 2025-11-25 18:25:11 +08:00
puhui999
46129c53af feat:【antd】【mall】 优化积分商城活动表单 2025-11-25 18:22:00 +08:00
芋道源码
d40b6bc25b !276 fix: 启动命令还原
Merge pull request !276 from hw/dev
2025-11-25 10:18:15 +00:00
hw
11e3528eec fix: 启动命令还原 2025-11-25 14:46:55 +08:00
hw
46663651b4 fix: 遗漏修改 2025-11-25 14:45:52 +08:00
hw
1aad3b641c fix: eslint 2025-11-25 14:44:08 +08:00
hw
b4c77f5498 fix: 新分支迁移mp 2025-11-25 14:42:56 +08:00
Jin Mao
6f39e9136e Merge branch 'main' into feature/antd上传组件支持调用Image组件查看图片 2025-11-24 21:59:34 +08:00
xingyu4j
f22b390380 fix: lint 2025-11-24 15:34:25 +08:00
xingyu4j
c3a702efbf chore: lock 2025-11-24 15:34:18 +08:00
puhui999
26416b0acd feat:【antd】【mall】 spu 相关公共组件迁移 2025-11-24 15:07:00 +08:00
puhui999
390d9d7ca7 feat:【antd】【mall】 spu 相关公共组件迁移 2025-11-24 15:03:20 +08:00
xingyu4j
5804bc59f4 fix: lint 2025-11-24 14:35:21 +08:00
xingyu4j
a8fc1e5d33 fix: tdesign lint 2025-11-24 14:35:16 +08:00
xingyu4j
2c0c71e20a fix: naive lint 2025-11-24 14:35:01 +08:00
xingyu4j
db8d66d046 fix: ele lint 2025-11-24 14:34:52 +08:00
xingyu4j
50ba0c137a fix: antd lint 2025-11-24 14:34:38 +08:00
puhui999
c842592d10 feat:【antd】【mall】ProductAttributes 组件样式优化 2025-11-24 14:23:36 +08:00
xingyu4j
709afe9a83 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-24 13:54:12 +08:00
puhui999
0ae62ef7e7 feat:【antd】【mall】spu 优化 2025-11-24 12:00:50 +08:00
xingyu4j
8f0b784124 feat: merge github 2025-11-24 11:47:54 +08:00
YunaiV
2926a8aa36 feat:【antd/ele】【mp】freePublish review 2025-11-24 11:47:47 +08:00
xingyu4j
e44f9a0aca Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-11-24 11:47:31 +08:00
芋道源码
ffba101d39 !271 feat: [mp] 图文发表记录迁移
Merge pull request !271 from jawe/dev
2025-11-24 03:30:18 +00:00
jawe
77596d716b feat: [mp] 图文发表记录迁移 2025-11-24 11:04:38 +08:00
milletpeak
1f1ba16ead Merge branch 'main' into milletpeak-fontsize 2025-11-24 08:55:54 +08:00
panda7
b6edc5f574 fix: centered 为 true 时设置 draggable 无法拖拽 (#6948)
Co-authored-by: sqchen <chenshiqi@sshlx.com>
2025-11-24 08:38:10 +08:00
Jin Mao
8b0f138100 Merge branch 'main' into deps 2025-11-24 08:23:02 +08:00
ming4762
a810cd0b48 fix: fix IconPicker reporting an error when using search if no icon is found (#6944)
* 修复未搜索图标时分页报错的问题
 * 优化`IconPicker` 的分页逻辑,由total触发跳转到第一页,而不是用户控制
2025-11-24 07:56:55 +08:00
aonoa
b17fec41b0 fix: tree component cannot set a value (#6941)
Signed-off-by: aonoa <1991849113@qq.com>
2025-11-24 07:56:16 +08:00
Rex
5fcfabf1d4 fix: 修复菜单管理中标题栏样式异常问题 (#6934) 2025-11-24 07:00:08 +08:00
YunaiV
cc7e8eda4f feat:【antd/ele】【mp】菜单的 review 2025-11-23 21:03:36 +08:00
YunaiV
5622b810e4 feat:【antd/ele】【mp】图文草稿箱的 review 2025-11-23 20:52:13 +08:00
YunaiV
97e337ef16 feat:【antd/ele】【mp】autoReply 迁移完成 2025-11-23 20:08:49 +08:00
芋道源码
e60bbcf1d5 !268 Merge branch 'dev' of <a href="https://gitee.com/yudaocode/yudao-ui-admin-vben">https://gitee.com/yudaocode/yudao-ui-admin-vben</a> …
Merge pull request !268 from hw/reform-mp
2025-11-23 10:53:33 +00:00
YunaiV
42697ec614 review:【antd】【iot】首页的迁移 2025-11-23 18:51:16 +08:00
芋道源码
a32ff4a9c9 !269 refactor:【antd】【iot】重构首页统计组件,优化图表配置和数据加载逻辑,移除未使用的比较卡片组件
Merge pull request !269 from haohaoMT/dev
2025-11-23 10:43:57 +00:00
YunaiV
7a3780ca0b fix:【antd】DatePicker 在 valueFormat: 'x' 时,会存在告警,对应 https://gitee.com/yudaocode/yudao-ui-admin-vben/issues/ID43CX 2025-11-23 18:42:44 +08:00
YunaiV
adf4c23dbc fix:【antd/ele】【bpm】修复模型管理的权限控制错误,对应 https://github.com/yudaocode/yudao-ui-admin-vben/issues/142 2025-11-23 18:23:47 +08:00
芋道源码
183547cdf2 !270 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !270 from Jason/dev
2025-11-23 10:15:45 +00:00
jason
5b3f1b7ea0 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-23 17:41:22 +08:00
jason
82b787188b feat: [bpm][ele] 仿钉钉流程设计器子流程迁移问题修复 2025-11-23 17:40:08 +08:00
haohao
c4ec1748a8 refactor:【antd】【iot】更新消息趋势卡片组件,替换日期选择器为快捷日期范围选择器 2025-11-23 16:02:21 +08:00
haohao
7d8c57711f refactor:【antd】【iot】优化消息趋势卡片组件,调整图表渲染逻辑 2025-11-23 15:44:24 +08:00
YunaiV
86991eb67b fix:【bpm】提交人权限的错误文案提示,https://gitee.com/zhijiantianya/yudao-cloud/issues/ICXD5T 2025-11-23 15:32:42 +08:00
YunaiV
3b5850bf6b fix:【framework】文件、图片上传的类型限制多选配置不正确的问题,https://t.zsxq.com/Pf1m7 2025-11-23 15:17:33 +08:00
haohao
a1e6982a28 refactor:【antd】【iot】重构首页统计组件,优化图表配置和数据加载逻辑,移除未使用的比较卡片组件 2025-11-23 15:07:21 +08:00
jason
c9fc450d74 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-23 12:00:12 +08:00
jason
fec9a768d9 feat: [bpm][ele] 仿钉钉流程设计器迁移问题修复 2025-11-23 10:56:59 +08:00
jason
0e6d92e328 feat: [bpm][ele] 仿钉钉设计器迁移问题修复 2025-11-23 00:06:12 +08:00
YunaiV
b06278b3fd 834 fix:bpm 流程表单编辑打开直接保存js丢失问题修复 2025-11-22 22:05:27 +08:00
jason
c01b09b64b feat: [bpm][ele] 仿钉钉流程模型迁移 2025-11-22 09:29:25 +08:00
jason
9fa9437abf feat: [bpm][ele] 仿钉钉流程模型迁移 2025-11-22 09:20:49 +08:00
jason
dee1764556 feat: [bpm][ele] 用户选择弹窗,部门选择弹窗组件迁移 2025-11-21 22:12:24 +08:00
hw
a76583a522 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into reform-mp 2025-11-21 18:20:07 +08:00
hw
8d7d3d5fe1 fix: todo修复 2025-11-21 18:19:42 +08:00
yuan.ji
1d77b018bb feat(function): add antd上传组件支持调用Image组件查看图片 2025-11-21 17:33:59 +08:00
YunaiV
80b4a16dc4 review:【antd】【iot】数据流转 2025-11-21 11:35:39 +08:00
YunaiV
f650d44194 review:【antd】【iot】物模型的管理 2025-11-21 11:20:27 +08:00
YunaiV
543e48504b review:【antd】【iot】设备管理(暂未彻底 review,等 product 搞完) 2025-11-21 10:53:54 +08:00
YunaiV
77afbe4d64 review:【antd】【iot】产品管理 2025-11-21 10:48:06 +08:00
jason
ff8187bcb0 feat: [bpm][ele] 新建流程模型 20% 2025-11-21 09:44:56 +08:00
YunaiV
863fbf7456 review:【antd】【iot】设备分组 2025-11-21 09:34:28 +08:00
YunaiV
0251dc2f3b review:【antd】【iot】商品分类 2025-11-21 09:23:55 +08:00
YunaiV
c38d746c25 review:【antd】【iot】首页统计 2025-11-21 09:17:19 +08:00
芋道源码
23b87b13c4 !260 refactor:【antd】【iot】优化设备详情中的自动刷新开关样式
Merge pull request !260 from haohaoMT/dev
2025-11-20 13:54:57 +00:00
YunaiV
0207271e62 feat:【ele/antd】【mall】diy 的 coupon 组件的代码风格统一 2025-11-20 21:39:53 +08:00
YunaiV
5c9a86c0f0 feat:【antd】【mp】mp 的代码评审(menu) 2025-11-20 21:36:36 +08:00
YunaiV
53ef992d1e feat:【antd】【mp】mp 的代码评审(material) 2025-11-20 21:25:46 +08:00
YunaiV
e2848653f9 feat:【antd】【mp】mp 的代码评审(autoReply) 2025-11-20 21:18:21 +08:00
YunaiV
8d2da0a4d1 feat:【antd】【mp】mp 的代码评审(components) 2025-11-20 21:09:02 +08:00
YunaiV
c39a445d77 feat:【antd】【mp】mp 的代码评审(draft) 2025-11-20 18:40:35 +08:00
YunaiV
5b4d3c9820 feat:【antd】【mp】mp 的代码评审 2025-11-20 18:08:15 +08:00
芋道源码
7f9041da18 !266 【antd/ele】【mp】迁移
Merge pull request !266 from hw/reform-mp
2025-11-20 09:57:17 +00:00
芋道源码
ee7b0de534 !267 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !267 from Jason/dev
2025-11-20 09:54:06 +00:00
hw
c815e07321 fix: gitignore 2025-11-20 16:46:04 +08:00
hw
99e9d90e66 fix: gitignore 2025-11-20 16:38:35 +08:00
hw
05bf8092d0 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into reform-mp 2025-11-20 16:31:23 +08:00
hw
0cb43368b4 fix: 环境变量还原 2025-11-20 16:30:35 +08:00
jason
fe940663cd Merge remote-tracking branch 'yudao/dev' into dev 2025-11-20 16:27:47 +08:00
YunaiV
21b5c126c1 feat:【antd/ele】【组件】dict-tag 封装的代码统一评审 2025-11-20 16:22:47 +08:00
YunaiV
342a948bc0 feat:【antd/ele】【组件】form-create 封装的代码统一评审 2025-11-20 16:10:41 +08:00
jason
acb0cd350c feat: [bpm][ele] 流程定义列表 2025-11-20 16:06:35 +08:00
YunaiV
4aef96a8f8 feat:【antd/ele】【组件】cron-tab 封装的代码统一评审 2025-11-20 15:41:36 +08:00
YunaiV
c295fdda37 feat:【antd/ele】【组件】cropper 封装的代码统一评审 2025-11-20 15:41:29 +08:00
YunaiV
76c3632c52 feat:【antd/ele】【组件】table-action 封装的代码统一(剩余部分) 2025-11-20 15:24:09 +08:00
YunaiV
5147e75331 feat:【antd/ele】【组件】tinymce 封装的代码统一 2025-11-20 15:19:45 +08:00
jason
656e6447f0 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-20 13:32:53 +08:00
jason
2cf122ed14 feat: [bpm][ele] 流程模型列表 2025-11-20 13:02:37 +08:00
YunaiV
f425b821b3 feat:【ele】【infra】优化文件管理 2025-11-20 11:56:12 +08:00
YunaiV
cf581f3bb3 feat:【antd/ele】【mall/stat】优化 api 的注释 2025-11-20 11:05:51 +08:00
hw
0ea99e5aa8 fix: ele改回使用账号选择组件 2025-11-20 11:05:18 +08:00
YunaiV
f278ebaf79 feat:【antd/ele】【mall/stat】优化 api 的注释 2025-11-20 11:00:24 +08:00
YunaiV
937aac5b01 feat:【antd/ele】【mall/trade】优化 api 的注释 2025-11-20 10:50:17 +08:00
hw
cf14806b6f fix: todo修复 2025-11-20 10:34:21 +08:00
xingyu4j
712fdb6382 docs: images 2025-11-20 09:21:40 +08:00
xingyu4j
648224c252 docs: image 2025-11-20 09:21:24 +08:00
xingyu4j
17cd7670ab chore: move ci 2025-11-20 09:18:58 +08:00
YunaiV
2e4d79c99d feat:【antd/ele】【mall/product】优化 api 的注释 2025-11-20 09:16:08 +08:00
YunaiV
19c45368db feat:【antd/ele】【mall/promotion】优化 api 的注释 2025-11-20 09:09:46 +08:00
YunaiV
4d6eeb2681 feat:【antd/ele】【pay】优化 api 的注释 2025-11-20 08:43:34 +08:00
YunaiV
5743c213c2 feat:【ele】【bpm】优化 api 的注释 2025-11-20 08:37:08 +08:00
YunaiV
55cd88080c feat:【antd】【mp】优化 api 的注释 2025-11-19 22:18:02 +08:00
YunaiV
d7b6c87e33 feat:【antd/ele】【mp】优化 mp 账号的选择逻辑 2025-11-19 21:58:25 +08:00
YunaiV
25cd2b629c feat:【antd】【mp】review 枚举类相关的代码 2025-11-19 21:05:32 +08:00
YunaiV
234ca5cfa4 feat:【全局】system-enum.ts 拆分成 biz-*-enum.ts 多个枚举类,解耦 2025-11-19 20:51:26 +08:00
YunaiV
c0fe164710 feat:【ele】【ai】chat/index:修复小按钮之间的间隙不生效问题 2025-11-19 20:31:33 +08:00
YunaiV
55b47214c6 feat:【ele】【ai】chat/index:修复 conversation 高度不够的问题 2025-11-19 20:21:03 +08:00
YunaiV
ca04195846 feat:【ele】【ai】chat/index:关键组件的 review 2025-11-19 20:16:31 +08:00
YunaiV
241471f17a feat:【ele】【ai】chat/index:角色面板的优化 2025-11-19 18:48:19 +08:00
YunaiV
3b434cefa9 feat:【antd】【ai】chat/index:角色面板的优化 2025-11-19 17:10:51 +08:00
YunaiV
523e4b81da feat:【antd/ele】【ai】优化 api 格式 2025-11-19 16:46:34 +08:00
YunaiV
42f30230f2 feat:【ele】【ai】优化 chat 界面 2025-11-19 11:47:26 +08:00
米山
f7d9d1b1af chore: update package.json and app.vue imports, and ensure global styles are included 2025-11-19 11:13:06 +08:00
hw
c65fcfa2f3 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into reform-mp 2025-11-19 11:12:42 +08:00
hw
887e9766be fix: todo修改 2025-11-19 11:12:09 +08:00
YunaiV
07cb707e82 feat:【antd/ele】useFormSchema 的 placeholder 2025-11-19 10:52:29 +08:00
米山
aaf0274fe9 feat: add menu font size variable and update related components
- Introduced a new CSS variable `--menu-font-size` calculated from the base font size.
- Updated `PreferenceManager` to trigger CSS variable updates when `fontSize` is modified.
- Adjusted `updateCSSVariables` to set the new `--menu-font-size` based on the theme's font size.
- Ensured that the menu components utilize the updated font size with `!important` to maintain styling consistency.
2025-11-19 10:51:10 +08:00
YunaiV
b5adb74349 feat:【antd/ele】useFormSchema 的 placeholder 2025-11-19 10:44:49 +08:00
YunaiV
b67c24021c feat:【antd/ele】useFormSchema 的 placeholder 2025-11-19 10:40:59 +08:00
YunaiV
6b1a054e11 feat:【ele】DatePicker 补全 class 2025-11-19 10:25:47 +08:00
YunaiV
1100626968 feat:【ele】InputNumber 补全 controlsPosition、class 2025-11-19 10:21:31 +08:00
米山
c142af482b fix: update snapshot for defaultPreferences immutability test to reflect fontSize change
- Adjusted the snapshot to ensure consistency with the updated defaultPreferences configuration, specifically retaining the fontSize property.
2025-11-19 10:19:16 +08:00
YunaiV
2144a1103b feat:【ele】【crm】backlog 迁移完成 2025-11-19 10:16:04 +08:00
米山
cd7c11c7d0 fix: run 'pnpm format' update various components and improve layout structure
- Updated demo-preview and preview-group components for better error handling and layout.
- Enhanced drawer and modal components for improved auto-height functionality.
- Refactored layout components including header, footer, sidebar, and tabbar for better responsiveness and usability.
- Adjusted tooltip and help tooltip components for better user guidance.
- Fixed issues in various UI components to ensure consistent styling and functionality across the application.
2025-11-19 10:14:04 +08:00
YunaiV
43f7a12b59 feat:【ele】【crm】backlog 迁移初始化 2025-11-19 09:56:08 +08:00
YunaiV
b3b0ab83f9 feat:【ele】【crm】公海配置的迁移 2025-11-19 09:49:27 +08:00
YunaiV
99cd094cb0 feat:【ele】【crm】statistics 的部分(performance) 2025-11-19 09:42:23 +08:00
milletpeak
fb8f36eeec Merge branch 'main' into milletpeak-fontsize 2025-11-19 09:41:55 +08:00
YunaiV
9dbfe579e2 feat:【ele】【crm】statistics 的部分(除 performance 外) 2025-11-19 09:17:14 +08:00
YunaiV
7baf8d7e06 feat:【ele】【crm】customer 的部分(limitConfig) 2025-11-19 09:01:30 +08:00
YunaiV
63a4e1e901 feat:【ele】【crm】customer 的部分(import-form) 2025-11-19 08:47:17 +08:00
YunaiV
c1b55dccf3 feat:【ele】【crm】customer 的部分(form、list、detail) 2025-11-19 08:38:55 +08:00
YunaiV
9b7bd5d36a feat:【ele】【crm】contact 的全部 2025-11-19 08:32:37 +08:00
YunaiV
07f62cf882 feat:【ele】【crm】business 的全部(list、form、detail) 2025-11-19 08:29:06 +08:00
YunaiV
775fd1d732 feat:【ele】【crm】contact 的迁移初始化 2025-11-19 08:23:18 +08:00
YunaiV
20f0ed8415 feat:【ele】【crm】customer 的迁移初始化 2025-11-19 08:12:39 +08:00
YunaiV
37e6775282 feat:【ele】【crm】business 的迁移部分(list、form、detail) 2025-11-18 22:17:29 +08:00
YunaiV
5690645bd1 feat:【ele】【crm】statistics 的迁移初始化 2025-11-18 21:55:30 +08:00
YunaiV
0fdb6a739a feat:【ele】【crm】business 的迁移完成(status) 2025-11-18 21:42:40 +08:00
YunaiV
67af3f6e80 feat:【ele】【crm】business 的迁移初始化 2025-11-18 21:22:39 +08:00
YunaiV
4dc9ffdb29 feat:【ele】【crm】contract 的迁移完成(config) 2025-11-18 19:52:27 +08:00
YunaiV
666d932968 feat:【ele】【crm】contract 的迁移完成(list、detail、form) 2025-11-18 19:27:31 +08:00
YunaiV
abfbb851cb feat:【ele】【crm】contract 的初始化 2025-11-18 19:08:51 +08:00
xingyu4j
60854e59f1 feat: use vben/utils upload 2025-11-18 17:33:39 +08:00
xingyu4j
ec23e8acf6 feat: import form vben/utils 2025-11-18 17:29:52 +08:00
xingyu4j
b3a1848243 feat: add uploadError locales 2025-11-18 17:24:51 +08:00
xingyu4j
114114fc32 feat: 统一使用 utils 2025-11-18 17:22:12 +08:00
jason
e1ee1f1176 feat: [bpm][antd] review todo 修改 2025-11-18 16:24:36 +08:00
xingyu4j
03a5af3ba3 fix: antd mall diy 切换 2025-11-18 15:54:18 +08:00
xingyu4j
f1d9ffa47d docs: README 2025-11-18 14:07:25 +08:00
xingyu4j
3d4dcddb1e Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-18 14:02:25 +08:00
xingyu4j
79c6fdc7a2 chore: lock 2025-11-18 13:58:46 +08:00
hw
f1aec24f34 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into reform-mp 2025-11-18 13:45:13 +08:00
hw
9c8316c385 fix: ele改造 2025-11-18 13:44:41 +08:00
YunaiV
07c3cb2f13 feat:【ele】【crm】receivable 完成 2025-11-18 13:13:20 +08:00
xingyu4j
de15aa7b59 chore: remove playground and backend-mock 2025-11-18 11:56:48 +08:00
xingyu4j
40674bf1ad fix: lint 2025-11-18 11:52:27 +08:00
xingyu4j
ec69318078 chore: add tdesign 2025-11-18 11:49:09 +08:00
YunaiV
ffd74a749f feat:【ele】【crm】receivable 迁移的初始化 2025-11-18 10:58:27 +08:00
YunaiV
9680f80735 feat:【antd】【crm】api 请求的注释优化 2025-11-18 10:47:17 +08:00
YunaiV
6d37af629c feat:【antd】【crm】api 请求的注释优化 2025-11-18 09:20:09 +08:00
YunaiV
0b20f69a68 feat:【ele】【crm】clue 迁移 2025-11-18 08:57:22 +08:00
YunaiV
4c37f5f0ac feat:【ele】【crm】product 迁移 2025-11-18 08:35:31 +08:00
YunaiV
de46eb380a feat:【ele】【crm】product/category 迁移 2025-11-17 18:58:04 +08:00
jason
208a72aa8b Merge remote-tracking branch 'yudao/dev' into dev 2025-11-17 17:26:06 +08:00
YunaiV
f24c5f8be9 feat:【antd】【bpm】流程打印的设计 review 2025-11-17 16:53:28 +08:00
xingyu4j
9a4f0f6ab1 feat: Consider multi-line formatting for readability 2025-11-17 14:24:43 +08:00
芋道源码
5568a174af !264 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !264 from Jason/dev
2025-11-17 06:00:14 +00:00
YunaiV
f11b7aea69 review:【antd】【mp】代码评审 2025-11-17 13:57:41 +08:00
jason
2b9f869bb2 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-17 13:57:03 +08:00
xingyu4j
bed52983a0 fix: lint 2025-11-17 12:15:14 +08:00
xingyu4j
655ce2c2e8 chore: update node version >=20.12.0 2025-11-17 12:11:43 +08:00
xingyu4j
f841568e5a chore: update vue-tsc 2025-11-17 12:04:30 +08:00
xingyu4j
469697845c fix: sort 2025-11-17 11:21:49 +08:00
xingyu4j
273f3cbaf8 Merge branch 'main' of https://github.com/xingyu4j/vue-vben-admin into deps 2025-11-17 11:21:16 +08:00
xingyu4j
96f671908e chore: update deps 2025-11-17 11:17:47 +08:00
芋道源码
6f0273ab4e !263 feat:【antd】【mp】迁移
Merge pull request !263 from hw/reform-mp
2025-11-17 01:29:13 +00:00
YunaiV
32ffc2e556 feat:【ele】【crm】初始化界面 2025-11-17 09:28:32 +08:00
YunaiV
a273ab2882 feat:【ele/antd】【erp】优化详情界面,隐藏“操作”列 2025-11-16 22:55:34 +08:00
YunaiV
d9f4333e77 feat:【ele】【erp】purchase 的迁移(100%)- order/return 2025-11-16 21:55:32 +08:00
YunaiV
cfda6f4ea0 feat:【ele】【erp】purchase 的迁移(40%)- in 2025-11-16 21:49:36 +08:00
YunaiV
2973e0b70f feat:【ele】【erp】purchase 的迁移(20%)- supplier 2025-11-16 20:27:30 +08:00
YunaiV
e9164912e5 feat:【ele】【erp】home 的迁移(100%) 2025-11-16 20:02:53 +08:00
YunaiV
6fa33f4a62 feat:【ele】【erp】sale 的迁移(100%)- return 2025-11-16 19:53:41 +08:00
YunaiV
94a0c2e581 feat:【ele】【erp】sale 的迁移(30%)- order 2025-11-16 19:10:11 +08:00
YunaiV
6e2e357fed feat:【ele】【erp】sale 的迁移(10%)- 初始化 2025-11-16 19:02:31 +08:00
YunaiV
bb749844fe feat:【ele】【erp】stock 的迁移(100%)- move、out 2025-11-16 18:41:46 +08:00
YunaiV
cb9aaa338c feat:【ele】【erp】stock 的迁移(50%)- in 2025-11-16 18:36:53 +08:00
YunaiV
1810c5dc4a feat:【ele】【erp】stock 的迁移(30%)- check 2025-11-16 18:29:24 +08:00
YunaiV
14016b8d4e feat:【ele】【erp】stock 的迁移(20%)- warehouse 2025-11-16 17:48:44 +08:00
YunaiV
008f7cdbbf feat:【ele】【erp】stock 的迁移(10%) 2025-11-16 16:29:15 +08:00
YunaiV
8d3dd06266 feat:【ele】【erp】product 的迁移 2025-11-16 15:48:39 +08:00
YunaiV
1bc55e8fd0 feat:【ele】【erp】finance/receipt 的迁移 2025-11-16 15:38:22 +08:00
YunaiV
268a2d5504 feat:【ele】【erp】finance/payment 的迁移(80%) 2025-11-16 11:15:49 +08:00
YunaiV
982fe3b964 feat:【ele】【erp】finance/payment 的迁移(50%) 2025-11-16 09:25:43 +08:00
YunaiV
b3b7d2c78b feat:【ele】【erp】finance/account 的迁移 2025-11-16 09:13:09 +08:00
YunaiV
bebe2ea547 feat:【ele】【ai】chat 的迁移(初始化) 2025-11-15 22:15:01 +08:00
jason
aa76dd09e7 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-15 22:02:48 +08:00
jason
22c1d5b2ec feat: [bpm][antd] todo 修改 2025-11-15 22:01:27 +08:00
YunaiV
1aa15ae62a feat:【antd】【ai】chat 的样式 review 修复 2025-11-15 21:56:16 +08:00
jason
ec0518f36a feat: [bpm][antd] 流程打印自定义模板 2025-11-15 21:52:09 +08:00
YunaiV
a5d1ab75f8 feat:【antd】【ai】chat 的样式 review 修复 2025-11-15 21:48:44 +08:00
YunaiV
a15511ee6b feat:【antd】【ai】chat 的样式 review 2025-11-15 21:34:19 +08:00
YunaiV
a35485e618 feat:【antd】【ai】chat “附件列表功能”的迁移 2025-11-15 21:25:14 +08:00
YunaiV
844d4b9b1c feat:【antd】【ai】chat “Thinking 深度思考功能”的迁移 2025-11-15 20:34:36 +08:00
YunaiV
fc9663a100 feat:【antd】【ai】chat “Thinking 深度思考功能”的迁移 2025-11-15 19:46:10 +08:00
YunaiV
71e638188e feat:【antd】【ai】chat “返回异常时空消息删除”的迁移 2025-11-15 19:06:37 +08:00
YunaiV
6dd9e9e699 feat:【antd】【ai】chat 增加联网搜索的迁移 2025-11-15 19:02:21 +08:00
haohao
3bab9bdd11 refactor:【antd】【iot】统一组件文件命名规则,调整导入路径以匹配小写格式 2025-11-15 17:35:20 +08:00
YunaiV
23fd82b31b feat:【ele】【ai】image 全部实现 2025-11-15 15:51:21 +08:00
YunaiV
104be22d0d feat:【ele】【ai】image 的代码评审 2025-11-15 15:31:47 +08:00
YunaiV
636df26e73 feat:【ele】【ai】image 的迁移初始化 2025-11-15 14:50:27 +08:00
YunaiV
5858c435e8 feat:【antd】【ai】image 的代码优化 2025-11-15 13:58:33 +08:00
YunaiV
cc8703ca90 feat:【antd】【ai】chat 的代码优化 2025-11-15 13:50:55 +08:00
YunaiV
7c7a843e94 feat:【antd】【ai】image 的代码优化 2025-11-15 13:50:48 +08:00
haohao
7e6dd0a4df refactor:【antd】【iot】统一组件文件命名规则,调整导入路径以匹配小写格式 2025-11-15 12:03:48 +08:00
YunaiV
51fb4b479e feat:【ele】【ai】工作流的代码迁移 2025-11-15 09:26:36 +08:00
YunaiV
dc68abd4d9 feat:【antd】【ai】工作流的代码优化 2025-11-15 08:54:25 +08:00
YunaiV
02f2e90d43 feat:【ele】【antd】代码的差异同步 2025-11-14 22:23:05 +08:00
YunaiV
1cbd4033b8 feat:【ele】【ai】音乐的迁移 2025-11-14 22:22:43 +08:00
Jin Mao
f09aace765 fix: 更新依赖后的表格显示问题 2025-11-14 21:44:32 +08:00
YunaiV
d056629332 feat:【ele】【ai】知识库的 knowledge 优化实现 2025-11-14 20:51:14 +08:00
YunaiV
6d1f7a7d98 feat:【ele】【ai】知识库的 knowledge 优化实现 2025-11-14 18:25:03 +08:00
YunaiV
5dc6f2d672 feat:【ele】【ai】知识库的 knowledge 优化实现 2025-11-14 18:22:56 +08:00
Copilot
772529e2fb fix: rollback zod-defaults version to 0.1.3 (#6925)
* Initial plan

* fix: downgrade zod-defaults from 0.2.3 to 0.1.3 for Zod v3 compatibility

Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>
2025-11-14 16:16:45 +08:00
YunaiV
78bd8bee8f feat:【ele】【ai】知识库的 knowledge 初始化 2025-11-14 13:52:11 +08:00
hw
3e1dac41b6 fix: 环境变量复原 2025-11-14 11:23:39 +08:00
hw
48597a9e0b fix: 冲突 2025-11-14 11:18:50 +08:00
xingyu4j
eeff017b9f chore: add tdesign cspell 2025-11-14 10:22:18 +08:00
xingyu4j
22394ebdeb chore: move tdesign-vue-next to workspace 2025-11-14 10:21:48 +08:00
hw
d3cc555030 fix: 环境变量复原 2025-11-14 09:46:55 +08:00
YunaiV
33c066f0f0 feat:【antd】【ai】知识库的 knowledge document 优化(编辑) 2025-11-14 09:43:47 +08:00
YunaiV
132ce52e36 feat:【antd】【ai】知识库的 knowledge segment、document 优化 2025-11-14 09:07:26 +08:00
dependabot[bot]
ffbc9b22a7 chore(deps): bump the non-breaking-changes group across 1 directory with 26 updates (#6914)
Bumps the non-breaking-changes group with 20 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [vue](https://github.com/vuejs/core) | `3.5.23` | `3.5.24` |
| [@clack/prompts](https://github.com/bombshell-dev/clack/tree/HEAD/packages/prompts) | `0.10.1` | `0.11.0` |
| [@iconify/json](https://github.com/iconify/icon-sets) | `2.2.404` | `2.2.406` |
| [@pnpm/workspace.read-manifest](https://github.com/pnpm/pnpm) | `1000.2.5` | `1000.2.6` |
| [@tanstack/vue-query](https://github.com/TanStack/query/tree/HEAD/packages/vue-query) | `5.90.7` | `5.91.0` |
| [@tanstack/vue-store](https://github.com/TanStack/store/tree/HEAD/packages/vue-store) | `0.7.7` | `0.8.0` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.46.3` | `8.46.4` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.46.3` | `8.46.4` |
| [@vue/shared](https://github.com/vuejs/core/tree/HEAD/packages/shared) | `3.5.23` | `3.5.24` |
| [commitlint-plugin-function-rules](https://github.com/vidavidorra/commitlint-plugin-function-rules) | `4.1.0` | `4.1.1` |
| [eslint-config-turbo](https://github.com/vercel/turborepo/tree/HEAD/packages/eslint-config-turbo) | `2.6.0` | `2.6.1` |
| [lucide-vue-next](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-vue-next) | `0.507.0` | `0.553.0` |
| [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) | `0.6.14` | `0.7.1` |
| [sass](https://github.com/sass/dart-sass) | `1.93.3` | `1.94.0` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.8.2` | `5.9.3` |
| [unplugin-element-plus](https://github.com/element-plus/unplugin-element-plus) | `0.10.0` | `0.11.1` |
| [vxe-pc-ui](https://github.com/x-extends/vxe-pc-ui) | `4.10.16` | `4.10.22` |
| [vxe-table](https://github.com/x-extends/vxe-table) | `4.17.10` | `4.17.14` |
| [zod-defaults](https://github.com/Ced-Sharp/zod-defaults) | `0.1.3` | `0.2.3` |
| [@ast-grep/napi](https://github.com/ast-grep/ast-grep) | `0.37.0` | `0.39.9` |



Updates `vue` from 3.5.23 to 3.5.24
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.5.23...v3.5.24)

Updates `@clack/prompts` from 0.10.1 to 0.11.0
- [Release notes](https://github.com/bombshell-dev/clack/releases)
- [Changelog](https://github.com/bombshell-dev/clack/blob/@clack/prompts@0.11.0/packages/prompts/CHANGELOG.md)
- [Commits](https://github.com/bombshell-dev/clack/commits/@clack/prompts@0.11.0/packages/prompts)

Updates `@iconify/json` from 2.2.404 to 2.2.406
- [Commits](https://github.com/iconify/icon-sets/compare/2.2.404...2.2.406)

Updates `@pnpm/workspace.read-manifest` from 1000.2.5 to 1000.2.6
- [Release notes](https://github.com/pnpm/pnpm/releases)
- [Commits](https://github.com/pnpm/pnpm/commits)

Updates `@tanstack/vue-query` from 5.90.7 to 5.91.0
- [Release notes](https://github.com/TanStack/query/releases)
- [Changelog](https://github.com/TanStack/query/blob/main/packages/vue-query/CHANGELOG.md)
- [Commits](https://github.com/TanStack/query/commits/@tanstack/vue-query@5.91.0/packages/vue-query)

Updates `@tanstack/vue-store` from 0.7.7 to 0.8.0
- [Release notes](https://github.com/TanStack/store/releases)
- [Commits](https://github.com/TanStack/store/commits/v0.8.0/packages/vue-store)

Updates `@typescript-eslint/eslint-plugin` from 8.46.3 to 8.46.4
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.46.4/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.46.3 to 8.46.4
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.46.4/packages/parser)

Updates `@vue/shared` from 3.5.23 to 3.5.24
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/commits/v3.5.24/packages/shared)

Updates `autoprefixer` from 10.4.21 to 10.4.22
- [Release notes](https://github.com/postcss/autoprefixer/releases)
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.21...10.4.22)

Updates `commitlint-plugin-function-rules` from 4.1.0 to 4.1.1
- [Release notes](https://github.com/vidavidorra/commitlint-plugin-function-rules/releases)
- [Changelog](https://github.com/vidavidorra/commitlint-plugin-function-rules/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vidavidorra/commitlint-plugin-function-rules/compare/v4.1.0...v4.1.1)

Updates `eslint-config-turbo` from 2.6.0 to 2.6.1
- [Release notes](https://github.com/vercel/turborepo/releases)
- [Changelog](https://github.com/vercel/turborepo/blob/main/release.md)
- [Commits](https://github.com/vercel/turborepo/commits/v2.6.1/packages/eslint-config-turbo)

Updates `lodash.clonedeep` from 4.5.0 to 
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/commits)

Updates `lodash.get` from 4.4.2 to 
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/commits)

Updates `lodash.isequal` from 4.5.0 to 
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/commits)

Updates `lodash.set` from 4.3.2 to 
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/commits)

Updates `lucide-vue-next` from 0.507.0 to 0.553.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/0.553.0/packages/lucide-vue-next)

Updates `prettier-plugin-tailwindcss` from 0.6.14 to 0.7.1
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.14...v0.7.1)

Updates `sass` from 1.93.3 to 1.94.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.93.3...1.94.0)

Updates `typescript` from 5.8.2 to 5.9.3
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.8.2...v5.9.3)

Updates `unplugin-element-plus` from 0.10.0 to 0.11.1
- [Release notes](https://github.com/element-plus/unplugin-element-plus/releases)
- [Commits](https://github.com/element-plus/unplugin-element-plus/compare/v0.10.0...v0.11.1)

Updates `vxe-pc-ui` from 4.10.16 to 4.10.22
- [Release notes](https://github.com/x-extends/vxe-pc-ui/releases)
- [Commits](https://github.com/x-extends/vxe-pc-ui/commits)

Updates `vxe-table` from 4.17.10 to 4.17.14
- [Release notes](https://github.com/x-extends/vxe-table/releases)
- [Commits](https://github.com/x-extends/vxe-table/compare/4.17.10...4.17.14)

Updates `zod-defaults` from 0.1.3 to 0.2.3
- [Commits](https://github.com/Ced-Sharp/zod-defaults/commits)

Updates `@ast-grep/napi` from 0.37.0 to 0.39.9
- [Release notes](https://github.com/ast-grep/ast-grep/releases)
- [Changelog](https://github.com/ast-grep/ast-grep/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ast-grep/ast-grep/compare/0.37.0...0.39.9)

Updates `@vue/reactivity` from 3.5.23 to 3.5.24
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/commits/v3.5.24/packages/reactivity)

---
updated-dependencies:
- dependency-name: vue
  dependency-version: 3.5.24
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@clack/prompts"
  dependency-version: 0.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: "@iconify/json"
  dependency-version: 2.2.406
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@pnpm/workspace.read-manifest"
  dependency-version: 1000.2.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tanstack/vue-query"
  dependency-version: 5.91.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: "@tanstack/vue-store"
  dependency-version: 0.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.46.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.46.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@vue/shared"
  dependency-version: 3.5.24
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: autoprefixer
  dependency-version: 10.4.22
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: commitlint-plugin-function-rules
  dependency-version: 4.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: eslint-config-turbo
  dependency-version: 2.6.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: lodash.clonedeep
  dependency-version: 
  dependency-type: direct:production
  dependency-group: non-breaking-changes
- dependency-name: lodash.get
  dependency-version: 
  dependency-type: direct:production
  dependency-group: non-breaking-changes
- dependency-name: lodash.isequal
  dependency-version: 
  dependency-type: direct:production
  dependency-group: non-breaking-changes
- dependency-name: lodash.set
  dependency-version: 
  dependency-type: direct:production
  dependency-group: non-breaking-changes
- dependency-name: lucide-vue-next
  dependency-version: 0.553.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: prettier-plugin-tailwindcss
  dependency-version: 0.7.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: sass
  dependency-version: 1.94.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: typescript
  dependency-version: 5.9.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: unplugin-element-plus
  dependency-version: 0.11.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: vxe-pc-ui
  dependency-version: 4.10.22
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: vxe-table
  dependency-version: 4.17.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: zod-defaults
  dependency-version: 0.2.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: "@ast-grep/napi"
  dependency-version: 0.39.9
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: "@vue/reactivity"
  dependency-version: 3.5.24
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-14 08:05:04 +08:00
YunaiV
4452de0677 feat:【antd】【ai】知识库的 knowledge 优化(retrieval) 2025-11-13 22:27:28 +08:00
YunaiV
26b1ea3888 chore: 合并远程 dev 分支代码 2025-11-13 20:45:00 +08:00
YunaiV
1ec739e62c chore: update pnpm-lock.yaml 2025-11-13 20:41:58 +08:00
YunaiV
2f67bdd410 feat:【antd】【ai】知识库的 knowledge 优化 2025-11-13 20:32:12 +08:00
YunaiV
e092ec737e review:【antd】【mp】material、message 的迁移 v2 2025-11-13 20:31:46 +08:00
xingyu4j
7f84c42bcc feat: use lucide icons 2025-11-13 18:36:35 +08:00
hw
6ae21c978b fix: eslint 2025-11-13 18:35:44 +08:00
hw
cdae277868 fix: ele统一风格 2025-11-13 18:35:10 +08:00
xingyu4j
83a5ca15b5 fix: doc slot 2025-11-13 17:44:44 +08:00
Jin Mao
c3a7562e2c Merge branch 'main' into milletpeak-fontsize 2025-11-13 17:01:42 +08:00
xingyu4j
8a4af8c55b fix: api 2025-11-13 16:57:06 +08:00
xingyu4j
ccab033c4b fix: kefu store 2025-11-13 16:56:52 +08:00
xingyu4j
da0946ebcd fix: api 2025-11-13 16:55:28 +08:00
xingyu4j
100f0a41b6 fix: mp 2025-11-13 16:12:44 +08:00
xingyu4j
62f630fd19 refactor: mp comps 2025-11-13 14:44:25 +08:00
xingyu4j
1ef38bc8b9 refactor: mp comps 2025-11-13 14:44:08 +08:00
xingyu4j
9a53edec8d feat: remove mp modules 2025-11-13 14:14:15 +08:00
xingyu4j
ebd51b0ecb feat: import from components 2025-11-13 14:13:51 +08:00
xingyu4j
b9073ff4bd feat: import form components 2025-11-13 14:12:48 +08:00
xingyu4j
edba53272d chore: deps 2025-11-13 14:12:20 +08:00
xingyu4j
1b5d03879f Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-13 14:11:01 +08:00
YunaiV
80bb508e78 review:【antd】【mp】material、message 的迁移 v1 2025-11-13 13:57:17 +08:00
xingyu4j
2577c1e4fc Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-13 13:53:57 +08:00
芋道源码
b3c1dff37d !252 【antd】【mp】消息管理 迁移
Merge pull request !252 from dylanmay/dev
2025-11-13 01:27:31 +00:00
Jin Mao
605e0ea128 chore: 更新依赖 2025-11-13 09:23:12 +08:00
dependabot[bot]
c89a83f980 chore(deps): bump stylelint-config-recommended from 14.0.1 to 17.0.0 (#6901)
Bumps [stylelint-config-recommended](https://github.com/stylelint/stylelint-config-recommended) from 14.0.1 to 17.0.0.
- [Release notes](https://github.com/stylelint/stylelint-config-recommended/releases)
- [Changelog](https://github.com/stylelint/stylelint-config-recommended/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint-config-recommended/compare/14.0.1...17.0.0)

---
updated-dependencies:
- dependency-name: stylelint-config-recommended
  dependency-version: 17.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-13 09:17:44 +08:00
Jin Mao
cfad88666b chore: 替换 lodash-es为 es-toolkit 并调整样式引入方式 (#6912) 2025-11-13 08:20:30 +08:00
Jin Mao
f918dc24c6 chore(@vben/utils): 移除冗余的 lodash 依赖 2025-11-13 07:47:48 +08:00
Jin Mao
e898993fe8 chore(@vben/utils): 替换 lodash 工具函数为 es-toolkit 实现 2025-11-13 07:45:10 +08:00
Jin Mao
5cafcb4a01 refactor(shared): 替换 lodash 工具函数为 es-toolkit 兼容版本
- 将 get 和 isEqual 方法从 lodash 替换为 es-toolkit/compat 导出
- 更新 package.json 添加 es-toolkit 依赖
- 注释掉原有的 lodash.get 和 lodash.isequal 导出语句- 锁定 es-toolkit 版本至1.41.0 并更新相关依赖配置
2025-11-13 07:28:52 +08:00
Jin Mao
03154cde88 chore: update depends 2025-11-13 07:16:28 +08:00
dependabot[bot]
a74bf7b63f chore(deps): bump echarts from 5.6.0 to 6.0.0 (#6859)
Bumps [echarts](https://github.com/apache/echarts) from 5.6.0 to 6.0.0.
- [Release notes](https://github.com/apache/echarts/releases)
- [Commits](https://github.com/apache/echarts/compare/5.6.0...6.0.0)

---
updated-dependencies:
- dependency-name: echarts
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2025-11-13 07:10:59 +08:00
YunaiV
a0b235134c fix:【antd】【mall】diy-editor 里的 component-container-property.vue 的 label-width 2025-11-13 00:02:11 +08:00
YunaiV
d15ff4bc80 fix:【antd】【mall】diy-editor 里的 mobile 各种修复,不限于 Image 的 preview、Form 的 label-col 的宽度、FormItem 的 prop 属性 2025-11-12 22:55:02 +08:00
米山
0bc7169698 feat: add global font size adjustment 2025-11-12 17:39:07 +08:00
米山
24b6e7a835 feat: add global font size adjustment 2025-11-12 17:38:41 +08:00
hw
7733d0a7f4 fix: todo修复 2025-11-12 16:56:18 +08:00
dylanmay
971b7e28f6 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-12 14:32:42 +08:00
dylanmay
5e183ee729 fix: 依赖处理 2025-11-12 14:32:14 +08:00
YunaiV
0263508912 fix:【antd】【mall】diy-editor 里的 carousel、navigation-bar 不支持 :show-input-controls、input-size、show-input 移除 2025-11-12 13:24:41 +08:00
dylanmay
64baf79bb6 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-12 12:25:53 +08:00
dylanmay
7d21ea2dcb fix: add vueuse/components 2025-11-12 11:18:14 +08:00
xingyu4j
dad002163b Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-12 09:58:23 +08:00
YunaiV
d4f9bb20dd feat:【antd】【mall】diy-editor 代码风格统一 & 逐个测试 70% 2025-11-12 09:30:46 +08:00
YunaiV
045ccca2a6 fix:【antd】【mall】diy-editor 的 hot-zone-edit-dialog 不正确 2025-11-12 08:54:34 +08:00
YunaiV
aa425e93a5 fix:【antd】【mall】diy-editor 的 menu-grid、menu-swiper 的 radio 不正确 2025-11-12 08:46:10 +08:00
YunaiV
f3c862faae fix:【antd】【mall】diy-editor 的 navigation-bar 的 radio 不正确 2025-11-12 08:43:37 +08:00
Jin Mao
f59e33682c Merge branch 'main' into main 2025-11-12 04:27:57 +08:00
Jin Mao
d811af37dd Merge branch 'main' into profile 2025-11-12 04:03:27 +08:00
Jin Mao
0e1a7d61f3 Merge branch 'main' into fix-downloader 2025-11-12 02:05:03 +08:00
panda7
573637222d feat: add form handleCollapsedChange event (#6893)
* feat: add form handleCollapsedChange event

* fix: ts lint

* fix: ts error

---------

Co-authored-by: sqchen <chenshiqi@sshlx.com>
2025-11-12 02:03:12 +08:00
shixi
05e9d65251 fix: for tdesign 2025-11-12 01:14:28 +08:00
shixi
0bbb20fee0 feat: sport notification link 2025-11-12 00:55:24 +08:00
shixi
dbc5ea32ae feat: add read and delete for each notification 2025-11-12 00:02:13 +08:00
YunaiV
4a03825313 fix:【antd】【mall】diy-editor 的 carousel 的 radio 不正确 2025-11-11 22:51:35 +08:00
YunaiV
7bd3a31a09 feat:【antd】【mall】diy-editor 代码风格统一 & 逐个测试 60% 2025-11-11 22:20:52 +08:00
YunaiV
4488425cbf feat:【antd】【mall】diy-editor 代码风格统一 & 逐个测试 50% 2025-11-11 19:34:42 +08:00
xingyu4j
16b42afc93 fix: todo 2025-11-11 15:26:52 +08:00
xingyu4j
7b0bb55df0 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-11 15:26:08 +08:00
xingyu4j
9d21b0e49a fix: lint 2025-11-11 15:25:44 +08:00
xingyu4j
736d91019e feat: add views 2025-11-11 15:24:41 +08:00
xingyu4j
10f2583e2f fix: bugs 2025-11-11 15:19:46 +08:00
xingyu4j
829d3afe4b fix: some bugs 2025-11-11 15:19:21 +08:00
xingyu4j
ac573416ef fix: lint 2025-11-11 15:08:11 +08:00
xingyu4j
5d0269da99 feat: code format 2025-11-11 13:52:01 +08:00
xingyu4j
15cf8571af feat: router 2025-11-11 13:44:51 +08:00
xingyu4j
af2eb88474 feat: core views 2025-11-11 13:44:33 +08:00
xingyu4j
b6d6edeeeb feat: utils 2025-11-11 13:43:53 +08:00
xingyu4j
9c8faf1db2 feat: infra api 2025-11-11 13:43:31 +08:00
xingyu4j
fd6192766d feat: system api 2025-11-11 13:43:13 +08:00
xingyu4j
b041b8e7d7 feat: auth and route 2025-11-11 13:42:13 +08:00
xingyu4j
21ec8975f8 feat: vxe config 2025-11-11 13:41:41 +08:00
xingyu4j
6b0da7e397 feat: api config 2025-11-11 13:41:14 +08:00
xingyu4j
26918cd56d chore: deps 2025-11-11 13:39:37 +08:00
YunaiV
a275432840 feat:【antd】【mall】diy-editor 代码风格统一 & 逐个测试 40% 2025-11-11 12:53:50 +08:00
YunaiV
6a270e26d8 feat:【antd】【mall】diy-editor 代码风格统一 & 逐个测试 30% 2025-11-11 09:58:36 +08:00
YunaiV
fadad35b20 feat:【antd】【mall】diy-editor 代码风格统一 & 逐个测试 20% 2025-11-10 19:13:25 +08:00
xingyu4j
0319604863 feat: playground add profile 2025-11-10 18:00:50 +08:00
xingyu4j
acf99f2441 feat: tdesign add profile 2025-11-10 18:00:25 +08:00
xingyu4j
cbf2a02877 feat: naive add profile 2025-11-10 17:59:58 +08:00
xingyu4j
226d9bd1ad feat: ele add profile 2025-11-10 17:59:33 +08:00
xingyu4j
48b3d30088 fix: types 2025-11-10 17:54:01 +08:00
xingyu4j
e311cfb8da feat: route add profile 2025-11-10 17:51:10 +08:00
xingyu4j
4347fba80a feat: antdv add profile 2025-11-10 17:50:47 +08:00
xingyu4j
7dc68ed368 feat: add profile comps 2025-11-10 17:49:58 +08:00
haohao
ef5b7e9c07 fix:【antd】【iot】修正导出功能中的时间格式化为更精确的格式 2025-11-10 17:12:25 +08:00
haohao
35dc2960b8 feat:【antd】【iot】添加设备状态和颜色映射功能,优化设备卡片样式 2025-11-10 17:05:35 +08:00
haohao
e12ac0c31d refactor:【antd】【iot】优化设备详情中的自动刷新开关样式 2025-11-10 15:17:13 +08:00
haohao
65d3be03b8 feat:【antd】【iot】将 DataZoom 组件添加到 echarts 集成中 2025-11-10 15:15:57 +08:00
haohao
9129b1eb41 fix:【antd】【iot】修改根据产品 ID 查询物模型列表接口 2025-11-10 15:11:40 +08:00
xingyu4j
488a9ecbde docs: README 2025-11-10 09:52:00 +08:00
xingyu4j
a3356a0a5e Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-11-10 09:16:13 +08:00
YunaiV
e231a0a948 review:【antd】【bpm】打印功能 2025-11-09 17:36:01 +08:00
芋道源码
b1b7934eb0 !259 流程打印迁移
Merge pull request !259 from Jason/dev
2025-11-09 09:31:59 +00:00
YunaiV
9fc5c7561e review:【antd】【mp】components 组件 2025-11-09 17:30:37 +08:00
YunaiV
229ead48f1 review:【antd】【mp】图文草稿箱 2025-11-09 17:16:51 +08:00
YunaiV
d6cbad72e5 review:【antd】【mp】自动回复优化 2025-11-09 16:55:03 +08:00
YunaiV
f8abee2b63 review:【antd】【mp】菜单优化 2025-11-09 15:31:20 +08:00
Jin Mao
a4aa133db5 Merge branch 'main' into tdesign 2025-11-09 12:04:30 +08:00
Utopia
6bbe523f6f chore: 增强 util-formatDate ts 类型提示 (#6886)
* feat: 为 auth layout 添加 slot: logo, 提升组件的灵活性和可复用性

* feat: 增强 util-formatDate ts 类型提示
2025-11-09 12:00:49 +08:00
Copilot
fef1e35c54 fix: prevent JSONBigInt parsing error on non-string data (#6891)
* Initial plan

* Fix json-bigint serialization error when data is not a string

Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>
2025-11-09 11:49:38 +08:00
xingyu
20410aeb03 fix: updating Tailwind CSS variables from --radix-* to --reka-* (#6890)
* fix: radix => reka

* chore: add reka cspell

* fix: Composition url
2025-11-09 11:49:01 +08:00
jason
045095922f chore: update pnpm-lock.yaml 2025-11-08 22:44:23 +08:00
jason
c09ff0cfb3 feat: 冲突解决 2025-11-08 22:23:19 +08:00
jason
143c9660da feat: [bpm][antd] 流程打印迁移 2025-11-08 22:13:29 +08:00
xingyu4j
15215b4f4c feat: mp 2025-11-07 19:06:34 +08:00
xingyu4j
31a8d38174 refactor: mp export 2025-11-07 17:58:24 +08:00
xingyu4j
51169116ae refactor: move assets 2025-11-07 17:44:26 +08:00
xingyu4j
0b3c1540d0 refactor: comps 2025-11-07 17:43:13 +08:00
xingyu4j
e94cedb591 fix: icon 2025-11-07 16:24:56 +08:00
xingyu4j
52a00b64ae fix: v-access:code 2025-11-07 15:27:41 +08:00
xingyu4j
85353ead55 fix: v-access:code 2025-11-07 15:26:09 +08:00
xingyu4j
cdcd782162 chore: deps 2025-11-07 15:25:52 +08:00
xingyu4j
288efce3c9 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-07 15:18:53 +08:00
xingyu
439906a67f !258 fix: 环境变量复原
Merge pull request !258 from hw/reform-mp
2025-11-07 07:18:41 +00:00
xingyu4j
a3dcb150a3 fix: OAuth 2.0 i18n warn 2025-11-07 15:17:08 +08:00
xingyu4j
2788964c62 chore: add cspell 2025-11-07 15:14:02 +08:00
xingyu4j
d7e585641f fix: use tabs warn 2025-11-07 15:13:34 +08:00
xingyu4j
5f071c20f3 fix: bpmn style 2025-11-07 14:29:18 +08:00
hw
93baa9602d fix: 环境变量复原 2025-11-07 14:12:42 +08:00
xingyu4j
aa13d2a67c fix: bugs 2025-11-07 14:09:03 +08:00
dylanmay
e577b084c7 fix: change table to grid 2025-11-07 13:21:42 +08:00
hw
dcc543cd7f fix: 组件名称修改 css样式使用tindwind 2025-11-07 11:33:32 +08:00
hw
92a1909ad8 fix: code 2025-11-07 10:27:03 +08:00
hw
bd9edc3fee fix: 插件修改为全局 2025-11-07 09:56:20 +08:00
hw
c745304e5f fix: eslint 2025-11-07 09:43:39 +08:00
dylanmay
bdfe23a14a Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-06 23:34:08 +08:00
dylanmay
33c6ccf654 fix: code style 2025-11-06 23:24:05 +08:00
dylanmay
007bb2dd26 fix: code style 2025-11-06 23:23:25 +08:00
Li Kui
83ea27af3e fix: fix lint 2025-11-06 23:16:23 +08:00
Li Kui
b7bfd69788 fix: fix lint 2025-11-06 23:10:03 +08:00
Li Kui
99d663a6f2 fix: fix typecheck 2025-11-06 23:02:24 +08:00
Li Kui
1af11240a6 chore: add tdesign logo 2025-11-06 22:37:55 +08:00
YunaiV
9248a321fe fix:【ele/antd】【mall】component-container-property.vue 的报错 2025-11-06 22:37:44 +08:00
YunaiV
63e94da3ca feat:【antd/ele】差异化代码的统一 2025-11-06 21:16:28 +08:00
YunaiV
80c31c3f32 feat:【antd/ele】【mall】客服的样式略微优化 2025-11-06 21:03:10 +08:00
xingyu4j
3483dceab3 feat: tailwindcss 2025-11-06 19:13:35 +08:00
xingyu4j
1aaae15706 fix: show full 2025-11-06 18:57:04 +08:00
Li Kui
3e8e8690e3 chore: Merge branch 'main' into tdesign 2025-11-06 17:49:51 +08:00
Li Kui
be843300be chore: update demo routes 2025-11-06 17:44:34 +08:00
xingyu4j
44675a847c Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-11-06 16:50:09 +08:00
hw
02fa21488c fix: 环境变量修改 2025-11-06 16:44:37 +08:00
Li Kui
dc77721c11 chore: demo i18n 2025-11-06 16:42:25 +08:00
Li Kui
a38d081f17 chore: enable VITE_NITRO_MOCK 2025-11-06 16:37:15 +08:00
xingyu4j
b82397fa5d chore: remove vueuse/components 2025-11-06 16:34:48 +08:00
xingyu4j
3cb140942c refactor: ele kefu 2025-11-06 16:30:36 +08:00
xingyu4j
c405e464a0 refactor: ele kefu 2025-11-06 16:27:18 +08:00
xingyu4j
36addb1380 refactor: kefu 2025-11-06 16:26:49 +08:00
Copilot
1e09fa4642 feat: migrate from Radix Vue to Reka UI (#6870)
* Initial plan

* Update dependencies and imports from radix-vue to reka-ui

Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>

* Fix type errors after reka-ui migration

Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>

* Run formatter to fix code style

Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>
2025-11-06 16:22:24 +08:00
dylanmay
500ce9cf7c fix: code style 2025-11-06 15:36:08 +08:00
Li Kui
bd8ff73f9e fix: fix build error 2025-11-06 15:26:24 +08:00
dylanmay
5269d4c387 fix: code style 2025-11-06 15:25:11 +08:00
Li Kui
57620dc2ea chore: apply coderabbitai suggestions 2025-11-06 15:11:28 +08:00
xingyu4j
af60802840 refactor: kefu 2025-11-06 15:04:27 +08:00
xingyu4j
103f633344 chore: use vueuse 2025-11-06 15:03:50 +08:00
Li Kui
b472fbb72f Merge branch 'main' into tdesign 2025-11-06 14:36:27 +08:00
Copilot
04321b16c1 fix: replace ant-design-vue with tdesign components in web-tdesign app (#6880)
* Initial plan

* fix: replace ant-design-vue with tdesign components

Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>

* fix: remove trailing comma in package.json

Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com>
2025-11-06 14:35:50 +08:00
xingyu4j
c6732bd658 feat: kefu 2025-11-06 12:44:50 +08:00
xingyu4j
c8e574b6c2 feat: 优化显示效果 2025-11-06 11:28:04 +08:00
xingyu4j
a4cbd5c094 fix: import 2025-11-05 21:06:26 +08:00
xingyu4j
12d55a8c3b fix: bugs 2025-11-05 20:30:42 +08:00
xingyu4j
35733c40eb fix: 切换页面 2025-11-05 20:13:00 +08:00
xingyu4j
e4040520e0 feat: VerticalButtonGroup style 2025-11-05 20:08:46 +08:00
xingyu4j
beec71dbbd fix: import 2025-11-05 19:47:35 +08:00
xingyu4j
0e185d1ed6 fix: style 2025-11-05 19:43:35 +08:00
xingyu4j
4ef521698a fix: style 2025-11-05 19:42:58 +08:00
xingyu4j
d6cd6cf133 fix: style 2025-11-05 19:37:41 +08:00
xingyu4j
89d758b071 feat: style 2025-11-05 19:07:32 +08:00
xingyu4j
56ae9c0230 feat: 优化 diy editor 2025-11-05 18:31:37 +08:00
xingyu4j
f60069d662 feat: icon 2025-11-05 18:27:17 +08:00
xingyu4j
dec939ee30 feat: 优化客服 2025-11-05 18:26:40 +08:00
hw
b897f50420 fix: eslint 2025-11-05 17:02:16 +08:00
hw
6a3e8173e0 feat: 图文草稿箱迁移 2025-11-05 17:01:42 +08:00
xingyu4j
318f142fa7 feat: diy editor style 2025-11-05 15:31:07 +08:00
xingyu4j
109c6226b4 fix: component property 2025-11-05 15:25:18 +08:00
xingyu4j
326e88762c feat: diy editor property 2025-11-05 15:24:20 +08:00
xingyu4j
15835352cc chore: cspell 2025-11-05 14:11:08 +08:00
xingyu4j
57f39fbc90 feat: 优化 diy editor 样式 2025-11-05 14:09:38 +08:00
xingyu
769c56aeff !250 fix: 去掉本地调试地址
Merge pull request !250 from jawe/dev
2025-11-05 02:43:20 +00:00
xingyu
5ecbb1b031 !255 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !255 from Jason/dev
2025-11-05 02:41:09 +00:00
jason
ed923a2661 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-05 09:56:47 +08:00
jason
62407c7aa2 feat: [antd][bpm] 流程签名问题修复 2025-11-05 09:52:23 +08:00
YunaiV
db804c2602 feat:【antd】【mall】diy-editor 的 vertical-button-group 迁移 2025-11-05 00:31:10 +08:00
xingyu4j
6ac33e0208 fix: type cell dict props 2025-11-04 20:12:24 +08:00
hw
c59e03073f fix: 环境变量修改 2025-11-04 18:12:50 +08:00
hw
978b9f8cd2 fix: 删除tagsView,使用vben useTabs 2025-11-04 18:07:04 +08:00
xingyu4j
58dc5aefab fix: lint 2025-11-04 17:56:30 +08:00
xingyu4j
689d4cd2a1 fix: lint 2025-11-04 17:50:03 +08:00
xingyu4j
b9b131296b fix: lint 2025-11-04 17:48:30 +08:00
xingyu4j
9082e82d98 fix: lint 2025-11-04 17:47:29 +08:00
dylanmay
c238920588 feat: 素材管理迁移 2025-11-04 17:32:12 +08:00
xingyu4j
df935a8f3b fix: use antdv qrcode 2025-11-04 17:21:50 +08:00
xingyu4j
d507cc6d6b Merge branch 'master' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-04 17:08:57 +08:00
hw
84795d10cd feat: 自动回复迁移 2025-11-04 16:53:08 +08:00
jawe
f1941bf9ab Merge branch 'dev' of gitee.com:yudaocode/yudao-ui-admin-vben into dev
Signed-off-by: jawe <532159638@qq.com>
2025-11-04 07:19:46 +00:00
jawe
bd7610c90d feat: [mall][kefu] 客服模块迁移至element-plus版 2025-11-04 15:11:14 +08:00
dylanmay
2153b1325c Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-04 14:38:50 +08:00
dylanmay
c2b0a91ffc feat: 消息迁移 2025-11-04 14:31:32 +08:00
Olexandr88
7268824612 Update README.md (#6828)
Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2025-11-04 04:34:55 +08:00
dependabot[bot]
23c41a8059 chore(deps): bump @types/node from 12.20.55 to 24.9.2 (#6860)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 12.20.55 to 24.9.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.9.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-04 04:16:59 +08:00
dependabot[bot]
fdc78faa13 chore(deps): bump @vueuse/integrations from 12.8.2 to 14.0.0 (#6861)
Bumps [@vueuse/integrations](https://github.com/vueuse/vueuse/tree/HEAD/packages/integrations) from 12.8.2 to 14.0.0.
- [Release notes](https://github.com/vueuse/vueuse/releases)
- [Commits](https://github.com/vueuse/vueuse/commits/v14.0.0/packages/integrations)

---
updated-dependencies:
- dependency-name: "@vueuse/integrations"
  dependency-version: 14.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-04 04:16:37 +08:00
dependabot[bot]
c8af580866 chore(deps): bump SamKirkland/FTP-Deploy-Action (#6873)
Bumps the non-breaking-changes group with 1 update: [SamKirkland/FTP-Deploy-Action](https://github.com/samkirkland/ftp-deploy-action).


Updates `SamKirkland/FTP-Deploy-Action` from 4.3.5 to 4.3.6
- [Release notes](https://github.com/samkirkland/ftp-deploy-action/releases)
- [Commits](https://github.com/samkirkland/ftp-deploy-action/compare/v4.3.5...v4.3.6)

---
updated-dependencies:
- dependency-name: SamKirkland/FTP-Deploy-Action
  dependency-version: 4.3.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-04 04:14:47 +08:00
YunaiV
f32bce424b feat:【antd】【mall】diy-editor 的整体继续迁移 2025-11-04 00:04:07 +08:00
YunaiV
fde4b7852c feat:【antd】【mall】diy-editor 的整体继续迁移 2025-11-03 23:53:31 +08:00
YunaiV
06309e40b8 feat:【antd】【mall】diy-editor 的 config.ts 同步。 2025-11-03 22:53:13 +08:00
Jin Mao
348c97710f Revert "refactor(jwt): 更新 JWT 工具函数实现方式 (#6869)"
This reverts commit a854760d26.
2025-11-03 19:34:45 +08:00
xingyu4j
bd38cf4c7d Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-03 18:09:01 +08:00
xingyu4j
56cd619e3c fix: todo 2025-11-03 18:08:45 +08:00
xingyu4j
34a8c44f9a feat: 优化sku list 显示效果 2025-11-03 18:05:53 +08:00
jawe
f3b7b4f66f fix: 去掉本地调试地址 2025-11-03 17:10:47 +08:00
jawe
b94f34c67d feat: 使用tailwindcss简化style,统一文件命名 2025-11-03 16:42:13 +08:00
hw
7a5f4b01e2 fix: eslint 2025-11-03 14:04:38 +08:00
hw
3e826de4aa feat: antd菜单模块迁移 2025-11-03 14:04:00 +08:00
YunaiV
f0f738a368 feat:【ele】【mall】diy-editor 的 index.vue 使用 tailwindcss 简化 style 2025-11-03 13:57:52 +08:00
YunaiV
27d47c13f2 feat:【ele】【mall】diy-editor 的 component-container.vue 使用 tailwindcss 简化 style 2025-11-03 13:44:40 +08:00
YunaiV
3b4cdfef82 feat:【ele】【mall】diy-editor 的 component-library.vue 使用 tailwindcss 简化 style 2025-11-03 13:34:55 +08:00
zengmingyong
a854760d26 refactor(jwt): 更新 JWT 工具函数实现方式 (#6869)
refactor(jwt): 更新 JWT 工具函数实现方式

- 将默认导入 jsonwebtoken 改为解构导入 sign 和 verify 方法
2025-11-03 13:08:06 +08:00
Copilot
c7c39047de feat: add theme-aware logo support via optional sourceDark configuration (#6866)
* Initial plan

* Initial exploration and setup

Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com>

* Add support for separate light and dark theme logos

Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com>

* Update documentation with dark theme logo configuration

Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com>

* feat: Add theme-aware logo support for authentication/login page

Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com>

* revert: .npmrc

Signed-off-by: aonoa <1991849113@qq.com>

---------

Signed-off-by: aonoa <1991849113@qq.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com>
Co-authored-by: Li Kui <90845831+likui628@users.noreply.github.com>
Co-authored-by: aonoa <1991849113@qq.com>
2025-11-03 13:07:36 +08:00
hw
8f5c928ab1 fix: 冲突合并 2025-11-03 11:22:11 +08:00
hw
81f85c200e style: 代码风格统一 2025-11-03 11:18:45 +08:00
xingyu
6e10534833 update pipeline-20251103.yml 2025-11-03 02:59:38 +00:00
xingyu
8db8536662 update pipeline-20251103.yml 2025-11-03 02:52:22 +00:00
xingyu
67bb3da219 update pipeline-20251103.yml 2025-11-03 02:31:22 +00:00
xingyu
a7836137ef create pipeline-20251103.yml 2025-11-03 02:22:36 +00:00
YunaiV
a79483a71d Merge branch 'origin/dev' into dev 2025-11-03 09:48:11 +08:00
YunaiV
03d5be1e41 feat:【ele】【mall】diy-editor 的 vertical-button-group 使用 tailwindcss 简化 style 2025-11-03 09:46:54 +08:00
xingyu
e4f64d2786 !247 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !247 from Jason/dev
2025-11-03 01:39:01 +00:00
YunaiV
fe2f8182f1 feat:【ele】【mall】diy-editor 的 magic-cube-editor 使用 tailwindcss 简化 style 2025-11-03 09:32:14 +08:00
YunaiV
b4c90b39c9 feat:【ele】【mall】diy-editor 的 floating-action-button 使用 tailwindcss 简化 style 2025-11-03 09:27:17 +08:00
YunaiV
e5ba8ca4f1 feat:【ele】【mall】diy-editor 的 hot-zone-edit-dialog 使用 tailwindcss 简化 style 2025-11-03 09:26:40 +08:00
jason
7d202f5d7d Merge remote-tracking branch 'yudao/dev' into dev 2025-11-03 09:14:09 +08:00
jason
60190fc94f feat: [antd][bpm] bpmn 流程图查看修改 2025-11-03 09:11:49 +08:00
YunaiV
b6920f332a feat:【ele】【mall】diy-editor 的 tab-bar 使用 tailwindcss 简化 style 2025-11-03 08:46:26 +08:00
YunaiV
ff28f089d4 feat:【ele】【mall】diy-editor 的 title-bar 使用 tailwindcss 简化 style 2025-11-03 08:44:27 +08:00
YunaiV
a33907d4ae feat:【ele】【mall】diy-editor 的 tab-bar 使用 tailwindcss 简化 style 2025-11-03 08:42:47 +08:00
YunaiV
19d30980d7 feat:【ele】【mall】diy-editor 的 navigation-bar 使用 tailwindcss 简化 style 2025-11-03 08:41:56 +08:00
YunaiV
0addd0c77b feat:【ele】【mall】diy-editor 的 menu-list 使用 tailwindcss 简化 style 2025-11-03 08:41:18 +08:00
YunaiV
28029becbd feat:【ele】【mall】diy-editor 的 hot-zone-edit-dialog 使用 tailwindcss 简化 style 2025-11-03 08:40:27 +08:00
YunaiV
fe2396f346 feat:【ele】【mall】diy-editor 的 floating-action-button 使用 tailwindcss 简化 style 2025-11-03 08:38:49 +08:00
YunaiV
60219ace92 feat:【ele】【mall】diy-editor 移除 mobile 多余的 style 标签 2025-11-03 08:33:52 +08:00
YunaiV
a92b98aa41 feat:【ele】【mall】diy-editor 对比 vue3 + element-plus 的最新代码,确保迁移的正确性! 2025-11-02 20:31:23 +08:00
YunaiV
dd86598833 fix:【ele】【mall】修复 diy-editor 拖拽后,无法切回“index”首页的问题 2025-11-02 19:59:30 +08:00
YunaiV
b4ed04f695 fix:【ele】【mall】修复 navigation-bar 选中格子后,无法编辑内容、颜色、链接 2025-11-02 19:43:36 +08:00
YunaiV
de39f4683a fix:【ele】【mall】修复 diy-editor 的“组件容器属性”的【外部边距】【内部边距】的间隙不太对 2025-11-02 18:15:08 +08:00
YunaiV
f984cb6dbd fix:【ele】【mall】修复 diy-editor 的“中心:设计区域(ComponentContainer)”宽度不对的问题 2025-11-02 17:22:38 +08:00
YunaiV
39ddf5a1ea feat:【antd】【mall】diy-editor 的 promotion-point 初始化 100% 2025-11-02 17:05:18 +08:00
YunaiV
2683f10bb5 feat:【antd】【mall】diy-editor 的 promotion-seckill 初始化 100% 2025-11-02 16:45:42 +08:00
YunaiV
0ffe7554ea feat:【antd】【mall】diy-editor 的 promotion-seckill 初始化 50% 2025-11-02 16:36:46 +08:00
YunaiV
82bc4e8b70 feat:【antd】【mall】diy-editor 的 promotion-combination 的代码优化 2025-11-02 16:01:44 +08:00
YunaiV
99a4aa993b fix:【ele】【member】会员详情的修改按钮不生效 2025-11-02 15:32:28 +08:00
YunaiV
f683f01efa feat:【antd】【ele】member 的 balance-list.vue、experience-record-list.vue、point-list.vue、sign-list.vue 增强 data.ts 的复用 2025-11-02 15:20:26 +08:00
YunaiV
d7cb4bdab5 review:【antd】【ele】member 增加 brokerage-list.vue 列表 2025-11-02 14:55:21 +08:00
YunaiV
889b97370a review:【antd】【ele】member 增加 address-list、favorite-list 列表 2025-11-02 14:43:01 +08:00
YunaiV
17ccc0a27f review:【antd】【ele】member 增加 coupon-list 列表 2025-11-02 14:30:17 +08:00
YunaiV
603f0d9c0d Merge remote-tracking branch 'origin/dev' into dev 2025-11-02 12:36:46 +08:00
YunaiV
5d61860996 review:【antd】【ele】member 增加 after-sale-list 列表 2025-11-02 12:35:53 +08:00
xingyu4j
c1777ffda0 fix: lints 2025-11-02 12:32:36 +08:00
xingyu4j
2d51c652b2 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-11-02 12:17:35 +08:00
YunaiV
1a3ce89f4b review:【antd】【ele】member 增加 order-list 列表 2025-11-02 12:10:46 +08:00
xingyu4j
adb5e3178b fix: lint 2025-11-02 12:09:34 +08:00
xingyu4j
a675e90328 chore: deps 2025-11-02 12:04:50 +08:00
jason
1dcb9688dd Merge remote-tracking branch 'yudao/dev' into dev 2025-11-02 09:31:26 +08:00
jason
1f767c5090 feat: [antd][bpm] 发起流程问题修复, todo 修改 2025-11-02 09:29:46 +08:00
YunaiV
904cf46ec0 review:【antd】【mall】客服模块 2025-11-02 09:20:25 +08:00
芋道源码
ac98a876b5 !243 feat(@vben/web-antd):迁移客服模块
Merge pull request !243 from jawe/dev
2025-11-02 00:51:59 +00:00
芋道源码
b3bc18096c !246 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !246 from Jason/dev
2025-11-02 00:49:39 +00:00
YunaiV
aee9e4ad1f review:【antd】【iot】设备分类、分组的 review 2025-11-02 08:47:58 +08:00
芋道源码
00e587593d !245 feat: 【antd】【iot】启用状态的产品不能删除
Merge pull request !245 from haohaoMT/dev
2025-11-02 00:46:34 +00:00
YunaiV
01e3c8e0f6 feat:【antd】【ele】优惠劵的 select 组件的统一 2025-11-02 08:42:30 +08:00
YunaiV
682a63bc6e feat:【antd】【mall】满减送的建议 2025-11-02 08:20:11 +08:00
jason
40f615d3c5 Merge remote-tracking branch 'yudao/dev' into dev 2025-11-01 22:57:04 +08:00
jason
cbe7797a1c feat: [antd] [bpm] 代码评审 todo 修改 2025-11-01 22:55:45 +08:00
YunaiV
4412d455a3 feat:【antd】【ele】代码风格统一 2025-11-01 22:50:24 +08:00
haohao
cc5477dc48 feat: 【antd】【iot】启用状态的产品不能删除 2025-11-01 21:55:01 +08:00
haohao
66c9398760 fix: 【antd】【iot】修改设备状态字典为 IOT_DEVICE_STATE 2025-11-01 21:53:22 +08:00
YunaiV
d7cea8be39 feat:【mall】video-player 优化 2025-11-01 21:42:23 +08:00
YunaiV
37afa49011 feat:【mall】diy editor 的 user-bard、user-wallet、user-order 优化 2025-11-01 21:38:39 +08:00
YunaiV
a1a037174c feat:【mall】diy editor 的 title-bar 优化 2025-11-01 21:35:28 +08:00
YunaiV
b8f3f74a01 feat:【mall】diy editor 的 tab-bar 优化 2025-11-01 21:29:25 +08:00
YunaiV
149caebaac feat:【mall】diy editor 的 tab-bar 优化 2025-11-01 21:24:50 +08:00
YunaiV
b880043900 feat:【mall】diy editor 的 search-bar 优化 2025-11-01 21:19:05 +08:00
YunaiV
c6d6d1c1e8 feat:【ele】【mall】draggable 优化 2025-11-01 21:18:49 +08:00
YunaiV
b3e1dab487 feat:【ele】【mall】product/spu 的 components 迁移 2025-11-01 21:09:29 +08:00
YunaiV
4bb631fb24 feat:【mall】diy editor 的 promotion-combination 优化 2025-11-01 19:58:34 +08:00
xingyu
e74cf2e237 !241 feat: 【antd】【iot】设备分组代码迁移
Merge pull request !241 from haohao/dev
2025-11-01 06:01:52 +00:00
YunaiV
2e50526922 feat:【mall】diy editor 的 promotion-article 优化 2025-11-01 12:09:10 +08:00
YunaiV
0741ae4b63 feat:【mall】diy editor 的 product-list 优化 2025-11-01 12:02:08 +08:00
YunaiV
43e758023a feat:【ele】【mall】product/spu 的 components 迁移 2025-11-01 11:46:43 +08:00
YunaiV
7f192823d7 review:【antd】【mall】商品发布相关 2025-11-01 11:05:04 +08:00
芋道源码
f2c90ea7a4 !244 mall 商城vue3组件迁移
Merge pull request !244 from puhui999/dev-mall
2025-11-01 02:48:46 +00:00
YunaiV
1a8b9873e0 feat:【mall】diy editor 的 product-card 优化 50% 2025-11-01 10:45:06 +08:00
YunaiV
98e3078784 feat:【mall】diy editor 的 popover 优化 2025-11-01 10:16:40 +08:00
YunaiV
48292b1a98 feat:【mall】diy editor 的 page-config 优化 2025-11-01 10:07:25 +08:00
YunaiV
a7d24de126 feat:【mall】diy editor 的 notice-bar 优化 2025-11-01 09:40:03 +08:00
YunaiV
5e1c7bb54c feat:【mall】diy editor 的 navigation-bar 优化 2025-11-01 09:21:26 +08:00
YunaiV
12968a3d66 feat:【mall】diy editor 的 menu-swiper 优化 2025-11-01 08:47:47 +08:00
YunaiV
27b35ac0cf feat:【mall】diy editor 的 menu-list 优化 2025-11-01 08:42:55 +08:00
YunaiV
356e8071ed feat:【mall】diy editor 的 menu-grid 优化 2025-11-01 08:33:49 +08:00
puhui999
abe2c04171 feat:【mall 商城】sku-list 组件优化(antd) 2025-10-31 23:40:48 +08:00
puhui999
58a0636959 feat:【mall 商城】满减送活动优化(antd) 2025-10-31 23:00:21 +08:00
puhui999
dd37e58a41 feat:【mall 商城】商品橱窗组件(antd) 2025-10-31 22:59:42 +08:00
puhui999
0956c79aa5 feat:【mall 商城】spu sku 选择器优化(antd) 2025-10-31 20:51:25 +08:00
hw
7cc72018ea Merge branch 'reform-menu' of https://gitee.com/huang-wen199982/yudao-ui-admin-vben into reform-menu 2025-10-31 18:10:12 +08:00
hw
20f838adde fix: eslint errors 2025-10-31 18:09:57 +08:00
puhui999
3802a87659 feat:【mall 商城】优惠券选择组件迁移(antd) 2025-10-31 15:48:18 +08:00
puhui999
83d3188477 feat:【mall 商城】秒杀活动表单优化(antd) 2025-10-31 10:44:22 +08:00
Jin Mao
f8a7a0a9a2 chore: lint 2025-10-31 09:11:40 +08:00
Jin Mao
2cb3dcf499 Merge branch 'fork/ming4762/timezone-fix-20251030'
# Conflicts:
#	packages/stores/src/modules/timezone.ts
2025-10-31 09:08:08 +08:00
Jin Mao
b36d32b66d chore(timezone): 添加 $reset 方法并初始化时区存储
- 在时区存储中添加 `$reset` 方法
-修复导入语句引号为双引号
- 优化时区初始化错误处理逻辑- 导出 `$reset` 方法以便外部调用- 确保时区设置与默认选项同步
- 提升代码一致性和可维护性
2025-10-30 23:27:53 +08:00
zhongming4762
639ea96bb9 fix: resolve the issue of logout failure caused by the timezone store 2025-10-30 17:12:45 +08:00
zhongming4762
565be77e96 fix: resolve the issue of logout failure caused by the timezone store 2025-10-30 17:01:49 +08:00
hw
0f3f6c0c20 chore: 更新配置文件和依赖 2025-10-30 16:33:33 +08:00
jawe
f331f46ff9 feat: [mall] kefu 客服模块迁移 代码风格统一 2025-10-30 16:27:44 +08:00
jawe
0ef91c1cad feat(@vben/web-antd):迁移客服模块 2025-10-30 15:39:08 +08:00
Jin Mao
ac6de0324c Merge branch 'fork/ming4762/timezone-20251020' 2025-10-30 00:42:05 +08:00
YunaiV
38df83e281 feat:【mall】diy editor 的 magic-cube-editor 优化 2025-10-30 00:11:56 +08:00
zhongming4762
f46ae023ba feat: increase support for multiple time zones
* 优化实现方法
2025-10-29 20:14:48 +08:00
zhongming4762
212144feca feat: increase support for multiple time zones
* 优化实现方法
2025-10-29 20:10:25 +08:00
zhongming4762
3eed51fd3e feat: increase support for multiple time zones
* 优化实现方法
2025-10-29 20:03:21 +08:00
zhongming4762
4d713db546 feat: increase support for multiple time zones
* 优化实现方法
2025-10-29 19:47:10 +08:00
YunaiV
cb9fc7ad3f feat:【mall】diy editor 的 magic-cube-editor 优化 2025-10-29 13:56:10 +08:00
YunaiV
fa383159ea feat:【mall】diy editor 的 magic-cube 注释 2025-10-29 09:52:01 +08:00
YunaiV
d6faed9d0e feat:【mall】diy editor 的 image-bar 2025-10-28 23:39:52 +08:00
YunaiV
fe7a69f570 feat:【mall】diy editor 的 hot-zone 代码优化(100%)完成商品分类的支持 2025-10-28 23:21:07 +08:00
YunaiV
05dc2c7eb2 feat:【mall】diy editor 的 hot-zone 代码优化(80%)进一步使用 Modal 2025-10-28 22:56:01 +08:00
YunaiV
a171489dbc feat:【mall】diy editor 的 hot-zone 代码优化(70%)使用 Modal 替代 el-dialog 2025-10-28 21:03:18 +08:00
YunaiV
ec29c25271 feat:【mall】diy editor 的 hot-zone 代码优化(70%)使用 Modal 替代 el-dialog 2025-10-28 20:31:12 +08:00
YunaiV
24757bb562 feat:【mall】diy editor 的 app-link-input 代码优化(50%) 2025-10-28 20:22:53 +08:00
YunaiV
4de0050610 feat:【mall】diy editor 的 hot-zone 代码优化(50%) 2025-10-28 19:22:27 +08:00
YunaiV
a4f7a51ba0 feat:【mall】diy editor 的 floating-action-button 组件 2025-10-28 19:08:39 +08:00
YunaiV
328ad78a2c feat:【mall】diy editor 的 divider 组件 2025-10-28 18:49:26 +08:00
YunaiV
11ac616fd1 feat:【mall】diy editor 的 coupon-card 的全部代码 & 增加优惠劵 select 组件 2025-10-28 18:04:37 +08:00
YunaiV
958f64a9c8 feat:【mall】diy editor 的 coupon-card 部分代码的优化 2025-10-28 17:07:08 +08:00
YunaiV
0f3f220d4b feat:【mall】diy editor 的 carousel 统一小写 2025-10-28 15:13:50 +08:00
YunaiV
71fe98723a fix: 解决合并冲突并更新依赖
解决多个组件模块的合并冲突,包括:
- BPM流程实例创建页面
- 基础设施相关模块(API访问日志、错误日志等)
- 商城促销相关组件
- 支付相关模块
- 系统管理模块
- Element Plus组件描述模块
- 依赖包更新

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-28 14:44:29 +08:00
YunaiV
01ffcb3598 feat:【mall】diy editor 解决 property-group 间距不生效的问题 2025-10-28 14:41:03 +08:00
xingyu4j
32d8af5475 fix: lint 2025-10-28 14:29:42 +08:00
xingyu4j
f88713ce28 chore: engines 2025-10-28 14:19:22 +08:00
xingyu4j
2dd3471f98 fix: antdv ele detail 保持一致 2025-10-28 14:17:28 +08:00
xingyu
8e174a8308 !242 fix: 不能打包
Merge pull request !242 from xingyu/dev
2025-10-28 05:40:28 +00:00
xingyu4j
1338637c00 fix: 不能打包 2025-10-28 11:46:56 +08:00
xingyu4j
e29ea7b34e fix: 不能打包 2025-10-28 11:46:33 +08:00
xingyu4j
fbbcca20e7 fix: 不能打包 2025-10-28 11:42:56 +08:00
YunaiV
b5c8197f20 feat:【mall】diy editor 恢复中间,宽度还有点问题 2025-10-28 07:45:27 +08:00
YunaiV
fd58c4c4e4 feat:【mall】diy editor 修复左侧、中间的宽度问题 2025-10-28 07:24:28 +08:00
YunaiV
715551d431 feat:【mall】diy editor 的告警修复 2025-10-27 23:42:43 +08:00
YunaiV
7d55a39635 feat:【mall】diy editor 的 “右侧操作区” 操作按钮的样式优化 2025-10-27 19:11:33 +08:00
YunaiV
b5cd15c28c feat:【mall】diy 优化,使用 useVbenModal 替代 ElModal 组件,弹出预览 2025-10-27 18:57:00 +08:00
YunaiV
b262dc7303 feat:【mall】diy 优化 index.vue 的注释 2025-10-27 12:59:53 +08:00
xingyu
a00c5caf6c !240 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !240 from Jason/dev
2025-10-27 02:28:52 +00:00
YunaiV
86c68b5466 feat:【代码优化】减少部分模块的 import * 的 API 2025-10-27 09:34:45 +08:00
YunaiV
d2db16c8c6 feat:【代码优化】减少部分模块的 import * 的 API 2025-10-27 09:13:32 +08:00
YunaiV
b7d32e315b feat:【代码优化】use-dict-select.ts 的 API 导入问题,不在 import * 2025-10-27 08:44:07 +08:00
jason
a325d3585e Merge remote-tracking branch 'yudao/dev' into dev 2025-10-26 23:21:11 +08:00
jason
66dbf16a77 feat: [antd] [bpm] 流程模型排序代码评审修改 2025-10-26 23:19:01 +08:00
jason
2f254d1285 Merge remote-tracking branch 'yudao/dev' into dev 2025-10-26 21:10:27 +08:00
YunaiV
9651ec49a6 feat:对齐 antd、ele 的代码逻辑 2025-10-26 21:10:16 +08:00
YunaiV
b1479c34c5 review:description 组件的实现 2025-10-26 20:47:24 +08:00
YunaiV
e139481973 feat:【全局】融合下 common card 目录的功能 2025-10-26 20:40:45 +08:00
YunaiV
bcf4fc102e feat:【ele】删除冗余的 summary-card.vue 2025-10-26 20:33:53 +08:00
YunaiV
e30c2c5412 feat:【全局】简化 handleStatusChange 类型逻辑的写法! 2025-10-26 20:25:52 +08:00
YunaiV
94e9d9a228 feat:【ele】【ai】manager 相关的迁移 2025-10-26 20:13:39 +08:00
haohao
fb481994bc feat: 【antd】【iot】产品分类代码迁移 2025-10-26 19:04:54 +08:00
haohao
8203f436cd feat: 【antd】【iot】设备分组代码迁移 2025-10-26 18:26:41 +08:00
YunaiV
60e199abf0 feat:【antd】【ai】image/manager 的代码优化 2025-10-26 18:14:08 +08:00
YunaiV
3d4aeb77b5 feat:【antd】【ai】music/manager 的代码优化 2025-10-26 18:11:10 +08:00
YunaiV
02b6ab1886 feat:【antd】【ai】chat/manager 的代码优化 2025-10-26 17:56:47 +08:00
YunaiV
86cae454d1 feat:【ele】【ai】modal 部分的代码迁移 2025-10-26 16:41:03 +08:00
YunaiV
fc6a467e63 feat:【ele】【ai】modal 部分的代码迁移 2025-10-26 16:32:52 +08:00
YunaiV
67952762ed feat:【ele】【ai】modal 部分的代码迁移 2025-10-26 16:32:43 +08:00
YunaiV
e301bee211 feat:【antd】【ai】modal 部分的代码优化 2025-10-26 16:06:45 +08:00
YunaiV
178a0a3bb2 feat:【antd】【ai】modal 部分的代码优化 2025-10-26 16:05:10 +08:00
YunaiV
0bb0c656b8 feat:【ele】【ai】mindmap 的代码迁移 2025-10-26 15:36:52 +08:00
YunaiV
eeed0f182b feat:【ele】【ai】mindmap 的代码迁移 2025-10-26 15:34:53 +08:00
Jin Mao
0cd9f4615c Merge branch 'main' into fix-downloader 2025-10-26 15:28:34 +08:00
Jin Mao
cfbce0d737 chore: fix lint 2025-10-26 15:27:28 +08:00
Jin Mao
1d9cd88dd7 Merge branch 'main' into fix-downloader 2025-10-26 15:16:32 +08:00
YunaiV
4d388bdb04 feat:【antd】【ai】mindmap 的代码优化 2025-10-26 15:16:09 +08:00
Jin Mao
0e62862119 chore: fix lint 2025-10-26 15:01:58 +08:00
Jin Mao
6b6cdef42d chore: 一些调整 2025-10-26 15:00:47 +08:00
Jin Mao
33b7a605c0 chore: 一些调整和兼容性更新 2025-10-26 14:23:37 +08:00
YunaiV
a35350d055 feat:【ele】【ai】write 的代码迁移 2025-10-26 14:16:10 +08:00
YunaiV
98d69fbee9 feat:【ele】【ai】write 的代码迁移 2025-10-26 14:00:30 +08:00
YunaiV
82917f88a5 feat:【antd】【ai】write 的代码优化 2025-10-26 13:56:46 +08:00
YunaiV
19959c79fc feat:【antd】【ai】write/manager 的代码优化 2025-10-26 13:35:39 +08:00
YunaiV
e218be3fdf feat:【antd】【mall】diy-editor 修复 element-plus 组件之路:部分解决 21% 2025-10-26 10:21:38 +08:00
YunaiV
21d03d8bac feat:【antd】【mall】diy-editor 修复 element-plus 组件之路:部分解决 20% 2025-10-26 10:11:36 +08:00
jason
9ed3c6b377 Merge remote-tracking branch 'yudao/dev' into dev 2025-10-26 09:12:17 +08:00
jason
e01fc275e1 feat: [antd]->[bpm] 代码评审修改 20% 2025-10-26 09:10:52 +08:00
YunaiV
289f6e3de4 feat:【antd】【mall】diy-editor 修复 element-plus 组件之路:部分解决 10% 2025-10-26 00:02:51 +08:00
YunaiV
0fb4f0f9eb feat:【antd】【mall】diy-editor 初始化(暂时不可用,保证界面先有。。。)linter 2025-10-25 23:40:03 +08:00
YunaiV
db1b3be27a feat:【antd】【mall】diy-editor 初始化(暂时不可用,保证界面先有。。。) 2025-10-25 23:18:55 +08:00
YunaiV
5e259eb685 feat:【antd】【mall】diy 主页面的迁移 2025-10-25 21:27:37 +08:00
YunaiV
d8f4979a47 feat:【ele】【mall】diy/page 代码优化 2025-10-25 21:02:09 +08:00
jason
adcacf1ff7 Merge remote-tracking branch 'yudao/dev' into dev 2025-10-25 20:35:52 +08:00
YunaiV
900671babd feat:【ele】【mall】diy/page 代码优化 2025-10-25 19:51:04 +08:00
YunaiV
6d3afd8ccf feat:【ele】【mall】diy-editor 调整目录到 promotion 更聚焦 2025-10-25 17:26:32 +08:00
YunaiV
a624307532 feat:【ele】【mall】diy-editor linter 修复 2025-10-25 17:05:13 +08:00
YunaiV
ae345d6fb2 feat:【ele】【mall】将 draggable 迁移到 mall/promotion/components 中,聚焦一点 2025-10-25 16:31:59 +08:00
YunaiV
1af1a9b2d4 feat:【ele】【mall】将 magic-cube-editor 迁移到 mall/promotion/components 中,聚焦一点 2025-10-25 16:23:44 +08:00
YunaiV
d550ef626c feat:【ele】【mall】将 input-with-colour 迁移到 mall/promotion/components 中,聚焦一点 2025-10-25 16:16:02 +08:00
YunaiV
cd14b16213 feat:【ele】【mall】将 color-input 迁移到 mall/promotion/components 中,聚焦一点 2025-10-25 16:04:28 +08:00
YunaiV
3d14d00a23 feat:【ele】【mall】将 color-input 迁移到 mall/promotion/components 中,聚焦一点 2025-10-25 16:04:21 +08:00
YunaiV
2909d1c4fa feat:【ele】【mall】将 app-link-input 迁移到 mall/promotion/components 中,聚焦一点 2025-10-25 15:53:51 +08:00
YunaiV
457add90bd feat:【ele】【mall】将 vertical-button-group 迁移到 mall/promotion/components 中,聚焦一点 2025-10-25 15:30:19 +08:00
YunaiV
870566dc12 feat:【ele】mp/user 的代码迁移 2025-10-25 15:18:40 +08:00
YunaiV
0566014501 feat:【ele】mp/tag 的代码迁移 2025-10-25 15:18:32 +08:00
YunaiV
a3890a120f feat:【ele】mp/tag 的代码迁移 2025-10-25 15:01:31 +08:00
YunaiV
fde9ddf468 feat:【ele】mp/statistics 的代码迁移 2025-10-25 14:44:58 +08:00
YunaiV
82e524076c feat:【antd】mp/statistics 的代码迁移 2025-10-25 14:33:16 +08:00
YunaiV
080b57af07 feat:【ele】mp/account 的代码迁移 2025-10-25 14:24:01 +08:00
YunaiV
402cab05b9 feat:【antd】mp/account 的代码优化 2025-10-25 14:16:10 +08:00
YunaiV
ec48c8859b fix:【ele】文件上传的 bug 2025-10-25 10:56:33 +08:00
YunaiV
c27b33bae8 feat:【antd】【ele】form-create 集成的 todo 处理 2025-10-25 09:59:29 +08:00
YunaiV
e6e891898c feat:【antd】【ele】form-create 集成的 todo 处理 2025-10-25 09:57:24 +08:00
YunaiV
4de08db26d feat:【antd】【ele】form-create 集成的 todo 处理 2025-10-25 09:56:01 +08:00
YunaiV
5e5a50615b feat:【antd】首页项目点击时,可以进行跳转 2025-10-25 09:24:33 +08:00
YunaiV
9a526f83cc feat:【antd】【bpm】修复 bpmn 设计器的高度不对的问题 2025-10-24 22:33:00 +08:00
YunaiV
db57d82799 feat:【antd】【bpm】oa 相关代码优化 2025-10-24 22:22:34 +08:00
YunaiV
d181c2a228 feat:【antd】【bpm】oa 相关代码优化 2025-10-24 22:18:32 +08:00
YunaiV
616dbf3b32 feat:【antd】【bpm】将 simple-model-design 迁移到 bpm components 下。 2025-10-24 21:24:59 +08:00
YunaiV
6f5a5ab3d4 feat:【antd】【bpm】将 bpmn-process-designer 迁移到 bpm components 下。 2025-10-24 20:46:43 +08:00
YunaiV
0046e49ab0 feat:【antd】【bpm】bpm/definition 的优化 2025-10-24 20:11:35 +08:00
YunaiV
9bb554f474 feat:【antd】【bpm】model/index.vue 代码评审 2025-10-24 20:03:30 +08:00
YunaiV
d568ab0fe9 feat:【antd】【bpm】model/form/ 代码评审 2025-10-24 13:57:31 +08:00
YunaiV
bbd32a274e feat:【antd】【bpm】processInstance/detail 代码评审 2025-10-24 00:01:38 +08:00
YunaiV
cbb65ffff3 feat:【antd】【bpm】processInstance/create 代码评审 2025-10-23 23:14:01 +08:00
YunaiV
abf015c444 feat:【antd】满减送活动的 review 2025-10-23 13:02:17 +08:00
YunaiV
319e9dc7bd Merge remote-tracking branch 'origin/dev' into dev
# Conflicts:
#	apps/web-antd/src/views/mall/promotion/point/activity/data.ts
#	apps/web-antd/src/views/mall/promotion/point/activity/index.vue
2025-10-23 12:46:02 +08:00
YunaiV
74bf240f52 feat:【antd】商品积分活动的 review 2025-10-23 12:44:19 +08:00
xingyu4j
8b7780d52d feat: 调整样式 2025-10-23 10:50:46 +08:00
xingyu4j
e73305d440 feat: boolean 类型使用 RadioGroup 解决 select boolean 类型 warn 2025-10-23 10:14:47 +08:00
xingyu4j
7ae3ac66fc fix: lint 2025-10-23 09:51:25 +08:00
xingyu4j
806caf8b48 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-23 09:47:08 +08:00
xingyu4j
7324166a4c fix: lint 2025-10-23 09:41:05 +08:00
xingyu4j
dd6d9d8868 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-23 09:40:16 +08:00
YunaiV
d14177a4c0 feat: merge remote dev branch changes
Merge IoT-related updates and improvements from remote dev branch

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 09:36:19 +08:00
YunaiV
9abaf69df1 feat:【antd】商品积分活动的 review 2025-10-23 09:35:16 +08:00
xingyu
0628280ea5 !238 修复物联网OTA升级页面和接口不可用的问题
Merge pull request !238 from huppygo/dev
2025-10-23 01:34:30 +00:00
YunaiV
ebc7aba637 feat:【antd】mall 发布界面的评审 2025-10-22 23:53:48 +08:00
Administrator
aefcd240e3 修复 2025-10-22 22:08:31 +08:00
zhongming4762
e01803ce9d feat: increase support for multiple time zones 2025-10-22 20:39:00 +08:00
zhongming4762
e3e5755903 feat: increase support for multiple time zones 2025-10-22 20:29:53 +08:00
zhongming4762
61ce53b686 feat: increase support for multiple time zones 2025-10-22 20:23:55 +08:00
zhongming4762
b029f77b6a feat: increase support for multiple time zones 2025-10-22 20:18:25 +08:00
zhongming4762
0a8339a405 feat: increase support for multiple time zones 2025-10-22 19:52:01 +08:00
Administrator
7ea4f836a4 修改物联网OTA升级页面和接口不可用的问题 2025-10-22 18:22:16 +08:00
xingyu4j
1db4c4170b fix: mall 2025-10-22 18:17:21 +08:00
xingyu4j
1f64551a3e fix: cellDictTag => CellDict 2025-10-22 18:07:46 +08:00
xingyu
495a924d56 !236 【mall 商城】promotion【antd】迁移
Merge pull request !236 from puhui999/dev-promotion
2025-10-22 10:06:51 +00:00
xingyu4j
cc937a88f1 feat: mp statistics 2025-10-22 18:03:32 +08:00
puhui999
cec1a58eab feat:【mall 商城】promotion reward【antd】100%: 迁移完成 2025-10-22 17:31:10 +08:00
puhui999
ca508caf61 feat:【mall 商城】promotion point【antd】100%: 迁移完成 2025-10-22 16:52:43 +08:00
xingyu4j
d0b66dbee4 fix: format 2025-10-22 16:35:01 +08:00
puhui999
ae0f3d39a2 feat:【mall 商城】promotion 公共组件【antd】100%: 迁移完成 2025-10-22 16:27:57 +08:00
xingyu4j
02945ef12a feat: mp user 2025-10-22 16:26:07 +08:00
xingyu4j
a23aaa473f feat: mp tag 2025-10-22 16:25:13 +08:00
puhui999
29b845ba05 feat:【mall 商城】SPU 商品选择弹窗组件【antd】100%: 迁移完成 2025-10-22 16:15:14 +08:00
xingyu4j
943ac99805 fix: 打包不成功 2025-10-22 15:41:13 +08:00
xingyu4j
2884ca72f7 fix: erp warn 2025-10-22 15:32:50 +08:00
xingyu4j
66647802af feat: ai code 2025-10-22 14:52:42 +08:00
xingyu4j
7aacec3e69 fix: crm statistics 2025-10-22 12:29:44 +08:00
xingyu4j
fc475c128c feat: mall detail 2025-10-22 10:22:51 +08:00
xingyu4j
9602ab6a1b fix: i18n 2025-10-22 10:18:11 +08:00
YunaiV
b5874bd0cd feat:【antd】mall 发布界面,独立目录 2025-10-22 00:21:00 +08:00
YunaiV
a7b9292b8d feat:【antd】mall 商品列表的优化代码 2025-10-21 23:48:41 +08:00
YunaiV
1286623863 feat:移除“ // 路由”重复注释。 2025-10-21 20:56:53 +08:00
YunaiV
28843fc8fe feat:【ele】bpm processInstance/report/ 的迁移 2025-10-21 19:39:06 +08:00
YunaiV
8721c4de72 chore: merge remote changes
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-21 19:27:55 +08:00
YunaiV
17558993d4 feat:【antd】bpm processInstance/report/ 的迁移 2025-10-21 19:26:06 +08:00
xingyu4j
760c5dde2a feat: 进一步优化显示效果 2025-10-21 18:17:02 +08:00
xingyu4j
20f95bb8ab refactor: spu form 2025-10-21 18:08:51 +08:00
xingyu4j
44e0a527a1 feat: 优化显示效果 2025-10-21 18:00:24 +08:00
xingyu4j
9ab51a137c fix: sku list 2025-10-21 17:55:23 +08:00
xingyu4j
80545f973a fix: lint 2025-10-21 17:45:43 +08:00
xingyu4j
5203b991de feat: add i18n 2025-10-21 17:42:02 +08:00
xingyu
d44ff7006a !235 feat:【mall 商城】商品发布 - 库存价格【antd】100%: 迁移完成
Merge pull request !235 from puhui999/dev-spu
2025-10-21 09:31:07 +00:00
puhui999
65e9aeed7f feat:【mall 商城】SKU 选择弹窗组件【antd】100%: 迁移完成 2025-10-21 17:18:06 +08:00
puhui999
5a4ecd4ad7 Merge branch 'dev' of gitee.com:yudaocode/yudao-ui-admin-vben into dev-spu
Signed-off-by: puhui999 <puhui999@163.com>
2025-10-21 08:53:26 +00:00
puhui999
38d345115c feat:【mall 商城】商品发布 - 库存价格【antd】100%: 迁移完成 2025-10-21 16:49:31 +08:00
puhui999
6bbf878171 feat:【mall 商城】商品发布 - 库存价格【antd】100%: 迁移完成 2025-10-21 16:39:54 +08:00
xingyu4j
985ce257e0 feat: use desc comp 2025-10-21 16:39:35 +08:00
xingyu4j
bb9cb64c64 refactor: refactor naive desc comp 2025-10-21 16:39:15 +08:00
xingyu4j
4959a8f401 fix: desc 2025-10-21 16:38:39 +08:00
xingyu4j
4726238e9a fix: desc 2025-10-21 16:38:24 +08:00
puhui999
93149876e5 feat:【mall 商城】商品发布 - 库存价格【antd】80%: 完善 sku form 逻辑 2025-10-21 16:10:49 +08:00
xingyu4j
d368582a90 feat: ele use desc comp 2025-10-21 15:33:32 +08:00
puhui999
6ea2082e4b feat:【mall 商城】商品发布 - 库存价格【antd】30%: 初始化 2025-10-21 15:18:04 +08:00
xingyu4j
18ef9031ca refactor: refactor ele desc comp 2025-10-21 15:16:32 +08:00
xingyu4j
94628d0c56 feat: use desc comp 2025-10-21 14:41:25 +08:00
xingyu4j
cc4a99c47d feat: desc 支持 嵌套字段 2025-10-21 14:40:20 +08:00
xingyu4j
e5d69952cb fix: 统一代码格式 2025-10-21 14:34:05 +08:00
xingyu4j
7f7f7cda2b fix: color: 'auto' => color: 'inherit' 2025-10-21 13:47:52 +08:00
xingyu4j
14093bec07 feat: 优化 desc 组件的显示效果 2025-10-21 13:42:52 +08:00
YunaiV
f61e58db96 feat:【ele】bpm processInstance/index.vue 的迁移 2025-10-21 13:11:08 +08:00
YunaiV
3f58003341 feat:【ele】bpm processInstance/index.vue 的迁移 2025-10-21 13:10:47 +08:00
YunaiV
b3b3e632ec feat:【antd】bpm processInstance/index.vue 的迁移 2025-10-21 13:06:37 +08:00
YunaiV
f488d7e414 feat:【ele】bpm processInstance/manager 的迁移 2025-10-21 12:52:31 +08:00
YunaiV
1ed485fe3e feat:【antd】bpm processInstance/manager 的迁移 2025-10-21 12:44:03 +08:00
xingyu4j
2d40c0c9f5 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-21 12:12:05 +08:00
xingyu4j
bd09ecf2b5 fix: 缺失的字典枚举 2025-10-21 11:41:07 +08:00
xingyu4j
de4ca0a5a4 feat: use new desc comp 2025-10-21 11:40:42 +08:00
xingyu4j
284c47b721 refactor: antdv desc comp 2025-10-21 11:38:02 +08:00
puhui999
1ad4f2681e feat:【mall 商城】商品发布 - 库存价格 - 添加属性【antd】100%: 组件迁移 2025-10-21 11:00:33 +08:00
puhui999
3dc2d96514 feat:【mall 商城】商品属性列表组件【antd】100%: 组件迁移 2025-10-21 10:49:15 +08:00
Jin Mao
2264eaae18 feat: 新增集成tdesign组件的apps 2025-10-21 10:47:39 +08:00
YunaiV
77ba1ee68f feat:【ele】bpm task 的迁移 2025-10-21 09:41:25 +08:00
YunaiV
ad00cf839c feat:简化 ApiSelect 的 api 写法~ 2025-10-21 09:06:17 +08:00
YunaiV
3b4c01cedf feat:【antd】bpm task 的部分迁移 2025-10-20 23:33:52 +08:00
YunaiV
002ac223f0 feat:【ele】bpm processListener 的迁移 2025-10-20 23:12:24 +08:00
YunaiV
412982436a feat:【ele】bpm processListener 的迁移 2025-10-20 23:09:07 +08:00
YunaiV
fe1dccdcaa feat:【ele】bpm processExpression 的迁移 2025-10-20 23:05:35 +08:00
YunaiV
11bc471ef1 feat:【antd】bpm processExpression 的迁移 2025-10-20 23:01:05 +08:00
YunaiV
7f031ee59e feat:【ele】【ant】bpm form 高度不正确的问题 2025-10-20 22:55:27 +08:00
YunaiV
337c695b1d feat:【ele】bpm form 的迁移 100% 已完成 2025-10-20 22:33:55 +08:00
YunaiV
39508453fa feat:【ele】bpm form 的迁移 50% 初始化 2025-10-20 22:22:56 +08:00
YunaiV
f2f1675087 feat:【ele】bpm form 的迁移 50% 初始化 2025-10-20 22:22:49 +08:00
YunaiV
0b39a8ff38 feat:【antd】bpm form 的迁移 2025-10-20 22:06:36 +08:00
YunaiV
fe9928f9bf feat:【antd】bpm group 的迁移 2025-10-20 21:02:59 +08:00
YunaiV
55ea34c740 feat:【antd】bpm group 的迁移 2025-10-20 20:51:01 +08:00
YunaiV
20ac88271e feat:【ele】bpm category 的迁移 2025-10-20 20:27:08 +08:00
YunaiV
2cd4bc127d feat:【antd】bpm category 的代码风格统一 2025-10-20 19:59:32 +08:00
YunaiV
1b869a1e3a feat:使用 router name 进行跳转 2025-10-20 19:24:14 +08:00
YunaiV
fba34d6ceb feat:使用 router name 进行跳转 2025-10-20 19:14:00 +08:00
YunaiV
2b15a1835d fix:router push 无法使用 name 的问题 2025-10-20 19:09:14 +08:00
YunaiV
777ace6913 feat:统一 ele 和 antd 代码风格,移除
```
<style scoped>
:deep(.vxe-toolbar div) {
  z-index: 1;
}
</style>
```
2025-10-20 18:37:18 +08:00
YunaiV
376520253d feat:【mall 商城】交易统计【ele】100% 2025-10-20 18:31:14 +08:00
xingyu4j
03644613f3 feat: 使用 path 进行跳转 2025-10-20 15:42:23 +08:00
xingyu4j
dd70dc0012 fix: router push 2025-10-20 15:36:06 +08:00
xingyu4j
95bda979a1 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-20 14:45:04 +08:00
xingyu4j
5ceffa2fe9 feat: 优化 table tab 的显示 2025-10-20 14:44:39 +08:00
xingyu4j
eb61ac3adb fix: handlePickup prompt 2025-10-20 14:13:49 +08:00
YunaiV
b28209afe7 feat:【mall 商城】交易统计【antd】30%:优化 trend-card.vue 的实现 2025-10-20 13:58:34 +08:00
xingyu4j
27eb3e6d21 fix: SummaryCard import 2025-10-20 13:50:59 +08:00
xingyu4j
91dd233727 fix: reload config 2025-10-20 13:49:09 +08:00
YunaiV
7ed34921bc feat:【mall 商城】交易统计【antd】30%:优化 trend-card.vue 的实现 2025-10-20 13:16:41 +08:00
YunaiV
49b2b40210 feat: 2025-10-20 13:08:56 +08:00
YunaiV
72dca61f74 chore: complete merge
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-20 13:00:21 +08:00
xingyu4j
705b16b0d1 fix: sort 2025-10-20 11:35:12 +08:00
xingyu
38664bf047 !234 fix: lint
Merge pull request !234 from xingyu/dev
2025-10-20 02:54:38 +00:00
xingyu4j
496a808b86 fix: lint 2025-10-20 10:49:08 +08:00
xingyu4j
30c7727361 feat: 统一 api 组件的调用方法 2025-10-20 10:41:57 +08:00
xingyu4j
c6ef77694e fix: iot warn 2025-10-20 10:37:23 +08:00
xingyu
948cb916c4 !232 iot产品管理问题修复接口
Merge pull request !232 from huppygo/dev
2025-10-20 01:59:37 +00:00
YunaiV
faa4a9140d feat:【mall 商城】商品统计【ele】100%:迁移完成 2025-10-20 09:51:31 +08:00
YunaiV
12075acefa feat:【mall 商城】交易统计、商品统计【ele】60%:初始化 2025-10-20 09:45:49 +08:00
YunaiV
b11b7582c2 feat:【mall 商城】交易统计、商品统计【antd】30%:迁移完成 2025-10-20 09:39:41 +08:00
YunaiV
3aee960954 feat:【mall 商城】交易统计、商品统计【antd】20%:product-summary-card.vue 完善 2025-10-20 09:29:00 +08:00
YunaiV
b5bc8d24b9 feat:【mall 商城】交易统计、商品统计【antd】15%:product-rank-card.vue 完善 2025-10-19 22:14:49 +08:00
YunaiV
cb717a9d84 feat:【mall 商城】交易统计、商品统计【antd】10%:初始化 2025-10-19 20:57:57 +08:00
YunaiV
6c7af029a2 feat:【mall 商城】会员统计【ele】100% 全部完成 2025-10-19 20:29:18 +08:00
YunaiV
936806bd2d feat:【mall 商城】会员统计【antd】50% 全部完成 2025-10-19 19:42:07 +08:00
YunaiV
b2b43f2d19 feat:【mall 商城】会员统计【antd】45% area-card.vue 优化代码风格 2025-10-19 19:29:45 +08:00
YunaiV
f84a296416 feat:【mall 商城】会员统计【antd】40% area-card.vue 修复界面 2025-10-19 19:22:03 +08:00
YunaiV
05bc69541b feat:summary-card 重构到 common-ui 里! 2025-10-19 19:10:09 +08:00
YunaiV
f6053bd6ca feat:【mall 商城】会员统计【antd】30% summary-card.vue 优化界面 2025-10-19 19:05:41 +08:00
YunaiV
01aef369d7 feat:【mall 商城】会员统计【antd】20% sex-card.vue 完善 2025-10-19 18:47:48 +08:00
YunaiV
fe62992d78 feat:【mall 商城】会员统计【antd】10% 初始化 2025-10-19 18:40:27 +08:00
YunaiV
bd9d8376c2 feat:【mall 商城】商城首页的迁移【ele】100%:评审完成 2025-10-19 16:59:47 +08:00
YunaiV
73208aa304 feat:【mall 商城】商城首页的迁移【ele】60%:初始化 2025-10-19 16:41:58 +08:00
YunaiV
5b3749d535 feat:【mall 商城】商城首页的迁移【antd】55%:member-stat 修复缺陷 2025-10-19 16:21:53 +08:00
YunaiV
79f633bb86 feat:【mall 商城】商城首页的迁移【antd】50%:trade-trend-card 修复缺陷 2025-10-19 16:12:21 +08:00
YunaiV
f6a251243f feat:【mall 商城】商城首页的迁移【antd】45%:terminal-card 修复缺陷 2025-10-19 15:49:53 +08:00
YunaiV
1628ab8cb5 feat:【mall 商城】商城首页的迁移【antd】45%:member-funnel-card.vue 修复缺陷 2025-10-19 15:37:48 +08:00
YunaiV
af61726e0e feat:【mall 商城】商城首页的迁移【antd】40%:member-funnel-card.vue、member-terminal-card.vue 2025-10-19 11:18:40 +08:00
YunaiV
7b8a7efc5b feat:【mall 商城】商城首页的迁移【antd】30%:shortcut-card、operation-data-card.vue 2025-10-19 10:25:04 +08:00
YunaiV
95fffb8af0 feat:【mall 商城】商城首页的迁移【antd】20%:初始化 2025-10-19 10:09:33 +08:00
jason
61b64b21aa Merge remote-tracking branch 'yudao/dev' into dev 2025-10-19 09:34:23 +08:00
zoumingjun
38f91da5af fix: 优化双列布局组件点击展开左侧按钮位置不居中问题 2025-10-18 21:22:58 +08:00
zoumingjun
8edea3aee5 fix: 调整zh-CN/system.json中<"title": "系统管理">配置位置,保持与en-US/system.json中位置一致 2025-10-18 21:20:54 +08:00
zoumingjun
08b6e7713e fix: 修复对话框modal组件方法名错误 2025-10-18 21:13:34 +08:00
zoumingjun
6a89814b83 chore: 优化侧边栏展开折叠图标 2025-10-18 20:59:14 +08:00
zoumingjun
52d3aa9315 fix: 优化Checkbox组件hover样式,Input组件placeholder样式,TabsList组件圆角样式 2025-10-18 20:58:48 +08:00
zoumingjun
4e264c503a fix: 锁屏和解锁密码输入框自动聚焦 2025-10-18 20:55:53 +08:00
zoumingjun
32051e9ca0 fix: 优化左侧和右侧认证面板动画效果 2025-10-18 20:52:27 +08:00
YunaiV
ad6ba25b3e feat:【mall 商城】商城首页的迁移【antd】10%:初始化 2025-10-18 19:47:36 +08:00
芋道源码
fffe060ab1 !233 【antd】【ele】Mall 迁移 80%
Merge pull request !233 from 芋道源码/dev
2025-10-18 11:30:44 +00:00
YunaiV
769510c4f6 feat:统一两端 data.ts 关联数据的加载逻辑(写法) 2025-10-18 17:14:28 +08:00
zoumingjun
2b0079580b fix: 修复mock-data.ts父id错误 2025-10-18 16:32:23 +08:00
YunaiV
2288748ca8 feat:【mall 商城】优惠劵-模版(100% ele) 2025-10-18 11:45:57 +08:00
YunaiV
97e692d2fc feat:【mall 商城】优惠劵-领取记录(50% ele) 2025-10-18 11:37:28 +08:00
YunaiV
4084009556 feat:【mall 商城】优惠劵-模版(100% antd) 2025-10-18 11:13:50 +08:00
YunaiV
6577794b7d feat:【mall 商城】优惠劵-模版(70% antd) 2025-10-17 23:14:37 +08:00
YunaiV
20f7a9d087 feat:add formatFileSize 2025-10-17 21:47:54 +08:00
xingyu4j
b23581ba3b fix: warn 2025-10-17 18:17:01 +08:00
Administrator
cec1cc7590 修复下面的问题 和其他页面中的类似问题
1.apps/web-antd/src/views/iot/device/device/modules/DeviceForm.vue
type 是和方法分离的

2.apps/web-antd/src/views/iot/device/device/modules/detail/DeviceDetailsMessage.vue
const getMessageList = async () => {
方法使用function 不要用const,保持一致

3.apps/web-antd/src/views/iot/device/device/modules/detail/DeviceDetailsMessage.vue
<script setup lang="ts">
文件结构是

4.apps/web-antd/src/views/iot/rule/data/rule/index.vue
handleRefresh 统一命名

Signed-off-by: Administrator <425053404@qq.com>
2025-10-17 18:06:58 +08:00
xingyu4j
23537b9f74 fix: warn 2025-10-17 17:36:55 +08:00
xingyu4j
1629003cdc feat: form create 2025-10-17 16:23:43 +08:00
xingyu4j
7704aef4c8 feat: form-create 2025-10-17 16:15:54 +08:00
xingyu4j
41baa56bf8 fix: remove message 2025-10-17 15:55:48 +08:00
xingyu4j
332de6dd91 fix: sort 2025-10-17 15:55:26 +08:00
xingyu4j
e14d10a4ba feat: 按需引入 form-create 2025-10-17 15:53:52 +08:00
xingyu4j
14a83d91f1 feat: 优化显示效果 2025-10-17 15:29:51 +08:00
xingyu4j
a65a5d2aab fix: getRangePickerDefaultProps 2025-10-17 15:10:23 +08:00
xingyu4j
22cf883cc4 fix: naive DatePicker default value use formatted-value 2025-10-17 15:03:43 +08:00
xingyu4j
09afe93a7a feat: add formatFileSize 2025-10-17 14:38:52 +08:00
xingyu4j
4f7b7c0e59 feat: job add crontab 2025-10-17 14:27:18 +08:00
xingyu4j
d4acf33a35 fix: select options 2025-10-17 14:26:59 +08:00
xingyu4j
81d92da3ac feat: add corn-tab 2025-10-17 14:24:56 +08:00
xingyu4j
ca1fefd197 feat: id use inputNumber 2025-10-17 13:39:23 +08:00
xingyu4j
15edcb1d7b fix: switch 2025-10-17 13:39:05 +08:00
xingyu4j
6979dbfa52 fix: switch slots 2025-10-17 11:33:49 +08:00
xingyu4j
a5e3406849 fix: naive code 2025-10-17 11:24:07 +08:00
xingyu4j
9499a80e8a feat: add FileUpload, ImageUpload 2025-10-17 11:23:43 +08:00
xingyu4j
ba7aa17dc3 fix: naive dict type 2025-10-17 11:23:23 +08:00
xingyu4j
c26d730a5a fix: ele createtime 2025-10-17 11:23:01 +08:00
xingyu4j
40a8e924a4 fix: antd createtime 2025-10-17 10:49:02 +08:00
xingyu4j
ee879055bb fix: ele Rate 2025-10-17 09:35:09 +08:00
xingyu4j
3055931904 feat: ele 注册rate组件 2025-10-17 09:34:10 +08:00
Administrator
1190121773 iot产品管理问题修复接口 2025-10-17 00:19:43 +08:00
Administrator
54afd4555d iot产品管理问题
1.修复物模型列表无限加载的问题
2.修复物模型管理页面添加,TSL,编辑,删除,功能类型选项功能不用问题
3.修复TSL按钮物模型接口没有的问题
4.修复物模型新增编辑页面的属性不能正常编辑修改问题美化显示
iot设备管理问题
1.修复新增编辑页面缺少字段相关组件
2.修复设备详情中子页面不显示问题
3.修复设备详情子页面物模型数据页面不显示问题
4.修复模拟设备右侧不显示问题 右侧溢出,改为上下分栏

Signed-off-by: Administrator <425053404@qq.com>
2025-10-17 00:13:48 +08:00
YunaiV
22bd8b8f45 feat:【mall 商城】优惠劵-模版(50% antd) 2025-10-16 23:34:41 +08:00
YunaiV
47a6a7284c feat:【mall 商城】优惠劵-领取记录(100% antd) 2025-10-16 23:04:33 +08:00
YunaiV
1394688364 feat:【mall 商城】文章分类(100% ele) 2025-10-16 22:06:52 +08:00
xingyu4j
e358c85c15 feat: allowClear to clearable 2025-10-16 18:05:39 +08:00
xingyu4j
dd1528d45a feat: add naive infra 2025-10-16 18:04:17 +08:00
xingyu4j
f6ad13b4f1 feat: add router 2025-10-16 18:03:51 +08:00
xingyu4j
4319b4ec26 feat: add upload 2025-10-16 18:03:33 +08:00
xingyu4j
d92cd2e48e feat: add report 2025-10-16 16:40:34 +08:00
xingyu4j
afdf859900 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-16 16:38:50 +08:00
xingyu4j
0094459b22 feat: naive desc comp label default left 2025-10-16 16:38:32 +08:00
xingyu4j
27c5dc65be feat: code style 2025-10-16 16:35:51 +08:00
xingyu4j
757eb72018 feat: naive system init 2025-10-16 16:35:02 +08:00
xingyu4j
bac9b0d747 feat: remove demo 2025-10-16 16:34:35 +08:00
xingyu4j
ecc9bdaad7 feat: add dayjs 2025-10-16 16:34:16 +08:00
xingyu4j
6c82311b1f feat: 保持方法一致性 2025-10-16 16:33:49 +08:00
YunaiV
3f6c405376 feat:清理多余的 buttonStyle: 'solid', 【ele】 2025-10-16 14:00:53 +08:00
YunaiV
d1089d7a50 feat:【mall 商城】文章分类(100% ele) 2025-10-16 13:16:53 +08:00
xingyu4j
79d7972172 feat: init naive vxe-table config 2025-10-16 11:27:50 +08:00
xingyu4j
27c1fdd1c0 feat: naive add dict-tag 2025-10-16 11:25:10 +08:00
xingyu4j
4e03d3577c feat: init naive base 2025-10-16 11:22:43 +08:00
xingyu4j
efc8607848 chore: init naive config 2025-10-16 11:21:19 +08:00
xingyu4j
1f81f07191 feat: init naive locales 2025-10-16 10:36:07 +08:00
xingyu4j
dc874aa090 feat: ini naive config 2025-10-16 10:32:39 +08:00
xingyu4j
b8cfb196e9 feat: add naive system infra api 2025-10-16 10:31:09 +08:00
xingyu4j
402f9a9080 chore: init naive config 2025-10-16 10:30:36 +08:00
xingyu4j
2ee3412aef fix: sort 2025-10-16 10:28:42 +08:00
xingyu4j
466d0c829e feat: naive adapter form 2025-10-16 10:20:45 +08:00
xingyu4j
bc6d0f7dd6 chore: 还原naive初始化 2025-10-16 10:16:45 +08:00
YunaiV
b28a35cd79 feat:【mall 商城】文章分类(100% antd) 2025-10-15 23:53:10 +08:00
YunaiV
6c6e1d4720 feat:【mall 商城】文章列表(100% antd) 2025-10-15 23:37:05 +08:00
YunaiV
68192bfacc Merge remote-tracking branch 'origin/dev' into dev
Resolved merge conflicts and integrated changes from remote branch.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 21:18:29 +08:00
YunaiV
d9da7bd6fb feat:【mall 商城】交易订单(100% ele 部分) 2025-10-15 21:17:05 +08:00
xingyu4j
4052e3c8d2 feat: 统一方法名 on => handle 2025-10-15 14:19:30 +08:00
YunaiV
daf01c0da8 feat:【mall 商城】交易订单(90% ele 部分) 2025-10-15 13:25:52 +08:00
YunaiV
ce5fc8cf3d feat:【mall 商城】交易订单(90% ele 部分) 2025-10-15 13:25:46 +08:00
YunaiV
7fd071a79b feat:【mall 商城】交易订单(80% ele 部分) 2025-10-15 13:14:59 +08:00
YunaiV
a82d492f58 feat:【mall 商城】交易订单(70% ele 初始化) 2025-10-15 12:37:15 +08:00
YunaiV
318cbc31b2 feat:【mall 商城】交易订单(60% antd delivery 优化代码风格) 2025-10-15 09:51:01 +08:00
YunaiV
8bd135414e feat:【mall 商城】交易订单(50% antd address 优化代码风格) 2025-10-15 09:45:38 +08:00
YunaiV
26f3aa18c2 feat:【mall 商城】交易订单(40% antd price 优化代码风格) 2025-10-15 09:37:02 +08:00
YunaiV
b40f10c68b feat:【mall 商城】交易订单(30% antd remark 优化代码风格) 2025-10-15 09:20:17 +08:00
YunaiV
a101cdf2f8 feat:【mall 商城】交易订单(30% antd remark 优化代码风格) 2025-10-15 09:12:51 +08:00
YunaiV
cc44ee3daa feat:【mall 商城】交易订单(30% antd list 优化代码风格) 2025-10-14 23:49:51 +08:00
YunaiV
8c5680de81 feat:【mall 商城】交易订单(20% antd detail 优化代码风格) 2025-10-14 23:17:28 +08:00
YunaiV
fc9d7232be feat:【mall 商城】交易订单(10% antd detail 初始化) 2025-10-14 22:18:57 +08:00
YunaiV
0d551f72a4 feat:【mall 商城】售后退款(100% ele) 2025-10-14 21:32:51 +08:00
YunaiV
6fe61f9efb feat:【mall 商城】售后退款(100% antd table) 2025-10-14 20:52:35 +08:00
YunaiV
5e8c9175bb feat:【mall 商城】售后退款(100% antd form) 2025-10-14 20:28:21 +08:00
YunaiV
9f3a0a9f34 feat:【mall 商城】售后退款(100% antd detail) 2025-10-14 19:46:15 +08:00
YunaiV
b512bcc134 feat:【mall 商城】售后退款(20% antd detail grid 相关的几个描述) 2025-10-14 19:07:31 +08:00
YunaiV
68fbd98991 feat:【mall 商城】售后退款(10% antd detail description 相关的几个描述) 2025-10-14 13:02:27 +08:00
YunaiV
876c32e833 feat:【框架】description 增加对 xx.yyy 属性的读取支持 2025-10-14 12:58:11 +08:00
xingyu4j
0a09970efb feat: 代码保持一致 2025-10-14 10:21:57 +08:00
xingyu4j
c19097ec0c Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-10-14 10:06:36 +08:00
xingyu
5f6b876c11 !230 修复iot产品管理:
Merge pull request !230 from huppygo/dev
2025-10-14 02:01:32 +00:00
YunaiV
c27378e75f feat:【mall 商城】售后退款(10% antd detail 初始化) 2025-10-14 09:46:45 +08:00
lidongcheng88
03ce030e7c fix: 混合双列 onMounted 关闭二级侧边栏 (#6807)
Co-authored-by: ldc <lidchen@tencent.com>
2025-10-14 06:56:00 +08:00
zouawen
59097e2466 chore: 新增是否开启首选项导航栏(外观、布局、快捷键、通用)吸顶效果,调整部分样式 (#6804) 2025-10-14 06:55:11 +08:00
YunaiV
1cf77fe6de feat:【mall 商城】门店自提的迁移(ele 100%) 2025-10-13 23:39:09 +08:00
YunaiV
a3d56ae6a3 feat:【mall 商城】门店自提的迁移(ele 80%) 2025-10-13 22:21:08 +08:00
huppygo
4261ca0a50 修复iot产品管理:
1.删除,导出,获取分页 引入地址不正确的问题
2.新增修改页面 点击确定按钮没有调用接口
3.新增修改页面productKey不显示问题,修复新增没有生成按钮问题
4.新增更多设置折叠框标题为更多设置 图标 图片 产品描述放到 更多配置折叠区域默认折叠点击展开
5.卡片列表中的产品图标根据设置的图标显示

Signed-off-by: Administrator <425053404@qq.com>
2025-10-13 22:20:35 +08:00
YunaiV
75c24789ff feat:【mall 商城】门店自提的迁移(antd 100%) 2025-10-13 21:17:34 +08:00
YunaiV
59b13842c4 feat:【mall 商城】门店自提的迁移(antd 50%) 2025-10-13 20:50:42 +08:00
YunaiV
e1cb380fdc feat:【mall 商城】门店自提待完成部分的梳理(antd 1%) 2025-10-13 19:50:28 +08:00
xingyu4j
f54424ced3 feat: 统一代码格式 2025-10-13 18:21:47 +08:00
xingyu4j
202a82bf44 refactor: 重构 dict_type 将每个模块分开,便于维护 2025-10-13 18:08:03 +08:00
xingyu4j
57d3ea3446 feat: cron-tab 2025-10-13 16:34:15 +08:00
xingyu4j
137c3f46a3 fix: error 2025-10-13 16:30:39 +08:00
xingyu4j
6720882dc1 feat: use Object.assign 2025-10-13 16:10:33 +08:00
xingyu4j
4358335d47 chore: 移除 min-dash 使用vben/utils 中的方法 2025-10-13 16:02:02 +08:00
xingyu4j
31e72c19ad feat: ele codegen use code editor 2025-10-13 15:01:52 +08:00
xingyu4j
2a71d61e21 feat: codegen use code editor 2025-10-13 14:55:22 +08:00
xingyu4j
8b423d3f08 feat: css style 2025-10-13 14:54:56 +08:00
xingyu4j
e7f1eb0844 feat: add code editor 2025-10-13 14:53:56 +08:00
YunaiV
a3a292db80 feat:【mall 商城】门店管理的迁移(ele 100%) 2025-10-13 13:10:46 +08:00
xingyu
938498ebc8 !226 feat:【mall 商城】分销提现的迁移(ele 100%)
Merge pull request !226 from 芋道源码/dev
2025-10-13 02:56:44 +00:00
xingyu4j
7b7ca39d83 fix: Top-level await is not available in the configured target environment 2025-10-13 10:55:54 +08:00
xingyu4j
a4561b3dd8 fix: iot && IconifyIcon 2025-10-13 10:41:08 +08:00
xingyu4j
4b69721a90 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-13 10:17:36 +08:00
xingyu4j
4c4cd57ef0 fix: iot 2025-10-13 10:17:19 +08:00
YunaiV
99c0945989 feat:【mall 商城】门店管理的迁移(antd 100%) 2025-10-13 09:53:11 +08:00
jason
be47a4482c Merge remote-tracking branch 'yudao/dev' into dev 2025-10-13 09:22:09 +08:00
YunaiV
1a9037f6ab feat:【mall 商城】门店管理的迁移(antd 50%) 2025-10-12 20:55:28 +08:00
YunaiV
8c6d1d68d1 feat:【mall 商城】快递模版的迁移(ele 100%)fix 必须要有 node-key 2025-10-12 20:19:43 +08:00
YunaiV
0d02c60478 feat:【mall 商城】快递模版的迁移(ele 100%) 2025-10-12 19:45:52 +08:00
YunaiV
31a583419a feat:【mall 商城】快递模版的迁移(antd 100%) 2025-10-12 19:29:55 +08:00
YunaiV
4270916ce4 chore: complete merge with remote changes
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-12 17:22:19 +08:00
YunaiV
43dc2d4446 feat:【mall 商城】快递模版的迁移(antd 40% 表单部分) 2025-10-12 17:20:49 +08:00
xingyu
efd1bda0d0 Merge branch 'master' of gitee.com:yudaocode/yudao-ui-admin-vben into dev
Signed-off-by: xingyu <xingyu4j@vip.qq.com>
2025-10-12 03:01:31 +00:00
YunaiV
7eeb52c582 feat:【mall 商城】快递模版的迁移(antd 30% 列表 ok) 2025-10-11 22:03:40 +08:00
YunaiV
53195748b8 feat:【mall 商城】快递公司的迁移(ele 100%) 2025-10-11 21:00:23 +08:00
YunaiV
a46fa6442c feat:【mall 商城】快递公司的迁移(antd 100%) 2025-10-11 20:26:57 +08:00
YunaiV
59bbe4cc93 fix:vite 被 ai 错误的从 7.1.2 降级成 5.4.10 iota问题 2025-10-11 20:24:32 +08:00
芋道源码
7824506e86 !225 fix: namespace缺少}
Merge pull request !225 from SNOWFLAKE/N/A
2025-10-11 11:20:40 +00:00
YunaiV
5f88a54d60 feat:【mall 商城】分销提现的迁移(ele 100%) 2025-10-11 13:47:28 +08:00
SNOWFLAKE
9c079ca220 fix: namespace缺少} 2025-10-11 05:33:59 +00:00
YunaiV
2f0ba0458e feat:【mall 商城】分销提现的迁移(antd 100%)样式优化 2025-10-11 13:06:22 +08:00
YunaiV
ced545a791 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-11 12:52:46 +08:00
YunaiV
51a9f05c47 feat:【mall 商城】分销提现的迁移(antd 50%) 2025-10-11 12:49:54 +08:00
xingyu4j
15c8146eda fix: names 2025-10-11 10:58:01 +08:00
xingyu4j
a156873437 fix: iot 2025-10-11 10:56:12 +08:00
YunaiV
28566a659f feat:【mall 商城】分销记录的迁移(antd、ele 100%) 2025-10-11 09:54:49 +08:00
YunaiV
9bf2846a12 Merge branch 'master' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-11 08:39:36 +08:00
YunaiV
bc6dfad4c9 fix: 【infra 基础设施】update label and dependencies in data.ts 2025-10-11 00:57:52 +08:00
xingyu4j
abcc062ba1 fix: v-access:code 2025-10-10 21:56:07 +08:00
xingyu4j
fac8cee297 fix: iot 2025-10-10 21:55:50 +08:00
xingyu4j
7ef1da4f2c Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-10 21:44:32 +08:00
xingyu4j
691f9aa764 fix: iot 2025-10-10 21:44:08 +08:00
YunaiV
8465941011 fix:【system 系统管理】linter 报错 2025-10-10 21:32:15 +08:00
xingyu4j
00a25ed1d3 feat: dict enum 2025-10-10 20:58:41 +08:00
xingyu4j
c57c82264a Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-10 20:56:20 +08:00
xingyu4j
196622a8d0 feat: add iot dict enum 2025-10-10 20:53:21 +08:00
YunaiV
f740461c2a fix:【iot 物联网】linter 报错 2025-10-10 20:26:17 +08:00
xingyu
84cd10eb93 !224 修改iot前端接口调用失败问题
Merge pull request !224 from huppygo/master
2025-10-10 12:22:47 +00:00
YunaiV
b6fee5c05b feat:【mall 商城】分销用户的 form 迁移(ele 100%) 2025-10-10 20:22:33 +08:00
xingyu4j
d789072aa3 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-10 20:21:09 +08:00
YunaiV
5e66e6bfac feat:【mall 商城】分销用户的 list modal 迁移(ele 60%) 2025-10-10 19:40:02 +08:00
huppygo
2db27d522f update apps/web-antd/src/api/iot/ota/task/record/index.ts.
Signed-off-by: huppygo <huppygo@qq.com>
2025-10-10 11:26:09 +00:00
huppygo
5dfdf4b10c update apps/web-antd/src/api/iot/ota/task/index.ts.
Signed-off-by: huppygo <huppygo@qq.com>
2025-10-10 11:25:39 +00:00
huppygo
752a450add update apps/web-antd/src/api/iot/ota/firmware/index.ts.
Signed-off-by: huppygo <huppygo@qq.com>
2025-10-10 11:24:04 +00:00
xingyu4j
850df7149a fix: style lint 2025-10-10 18:10:59 +08:00
YunaiV
f41e746a81 feat:【mall 商城】分销用户的 list modal 迁移(ele 50%) 2025-10-10 13:28:25 +08:00
YunaiV
f77e731357 feat:统一优化 useGridColumns<T = 泛型的使用 2025-10-10 09:50:37 +08:00
YunaiV
740da3f545 feat:【mall 商城】分销用户的 list modal 迁移(antd 100%) 2025-10-10 09:30:52 +08:00
YunaiV
94d0550ecc feat:【mall 商城】分销用户的 update 迁移(antd 50%) 2025-10-09 22:18:57 +08:00
YunaiV
db38eb23da feat:【mall 商城】分销用户的 create 迁移(antd 40%) 2025-10-09 21:28:13 +08:00
xingyu4j
b2ba1d9d37 fix: tenant tenantPackage 2025-10-09 18:38:13 +08:00
xingyu4j
378cdd4c38 fix: dept leaderUser 2025-10-09 18:33:01 +08:00
xingyu4j
d2f50c9388 fix: tree bugs 2025-10-09 18:23:35 +08:00
xingyu4j
f63dc0ecef fix: content warp extra css 2025-10-09 17:58:40 +08:00
xingyu4j
ab54628f79 feat: ele spu form 保持一致 2025-10-09 17:51:14 +08:00
xingyu4j
2e4b788c5d feat: spu 保持一致 2025-10-09 17:50:43 +08:00
xingyu4j
3d67a376a3 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-09 17:13:14 +08:00
xingyu4j
6f46dc90f2 fix: el pick up order css 2025-10-09 17:12:28 +08:00
xingyu4j
41fe54e5f0 feat: use Rate 2025-10-09 17:11:53 +08:00
xingyu4j
3829fa0b49 fix: pick up order css 2025-10-09 17:09:17 +08:00
xingyu4j
9520d7016e feat: use Rate 2025-10-09 17:07:30 +08:00
xingyu4j
5e1187bab5 fix: icon 2025-10-09 16:51:57 +08:00
YunaiV
f2c34d42b0 feat:【mall 商城】分销用户的迁移(antd 30%) 2025-10-09 13:29:18 +08:00
xingyu4j
7533486cf8 fix: captcha icon 2025-10-09 11:24:40 +08:00
xingyu4j
066b28b2cc fix: bug 2025-10-09 11:20:28 +08:00
xingyu4j
99dd3350f4 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-10-09 11:19:32 +08:00
YunaiV
96a1232b1e feat:【mall 商城】交易配置的迁移与 bugfix(ele) 2025-10-09 10:01:33 +08:00
YunaiV
20adbc65a8 feat:【mall 商城】交易配置的迁移与 bugfix(antd) 2025-10-09 09:21:51 +08:00
YunaiV
f83a0adb2b feat:【mall 商城】商品评论的迁移(ele) 2025-10-08 20:04:48 +08:00
YunaiV
637d02d33c feat:【mall 商城】商品评论的迁移(ele) 2025-10-08 19:54:14 +08:00
YunaiV
e226e09e8a feat:【mall 商城】商品属性的迁移(ele) 2025-10-08 18:10:42 +08:00
YunaiV
276d91190c feat:【mall 商城】商品属性的迁移(antd) 2025-10-08 17:01:18 +08:00
YunaiV
5cdf1af39f feat:【mall 商城】API 风格调整 2025-10-08 11:17:22 +08:00
YunaiV
4648f2023b feat:【mall 商城】商品分类的迁移 2025-10-08 10:53:22 +08:00
YunaiV
e84cd6147c feat:【mall 商城】商品分类的迁移 2025-10-08 10:22:27 +08:00
芋道源码
1e9bfb419e !223 【antd】Member 迁移彻底完成
Merge pull request !223 from 芋道源码/dev
2025-10-07 12:55:45 +00:00
芋道源码
9b36b84253 !222 Vue3 + Element Plus版本iot前端迁移到vben版本
Merge pull request !222 from huppygo/master
2025-10-07 12:54:45 +00:00
YunaiV
2e91f912d5 fix:【antd】【ele】system 下角色分配,不支持多选的问题 2025-10-07 20:53:31 +08:00
YunaiV
5e5ae1195e feat:【ele】【member 会员】优化会员详情 2025-10-07 20:46:52 +08:00
YunaiV
a2ed4445f2 feat:【ele】【member 会员】优化会员 list、form 相关的代码 2025-10-07 20:30:18 +08:00
YunaiV
2efefb30bb feat:【ele】【member 会员】优化会员 list、form 相关的代码 2025-10-07 20:20:41 +08:00
YunaiV
cdd7e69f8e feat:【ele】【member 会员】优化会员 list、form 相关的代码 2025-10-07 20:20:33 +08:00
Administrator
877a03df4a Vue3 + Element Plus版本iot前端迁移到vben版本 2025-10-07 19:58:59 +08:00
YunaiV
d3e7c49255 feat:【ele】【member 会员】会员详情独立 detail 目录 2025-10-07 19:35:08 +08:00
YunaiV
412dd3c05c feat:【ele】【member 会员】会员详情独立 detail 目录 2025-10-07 19:35:02 +08:00
YunaiV
4978bbbcf1 feat:【antd】【member 会员】完成详情界面的迁移 2025-10-07 17:10:54 +08:00
YunaiV
25af653216 feat:【antd】【member 会员】迁移 CouponSendForm 组件 2025-10-07 16:28:15 +08:00
YunaiV
4809b7847a feat:【antd】【member 会员】迁移 CouponSendForm 组件 2025-10-07 16:17:21 +08:00
YunaiV
d88ba2ad4e feat:【antd】【member 会员】完成 balance-form 的迁移与 bugfix 2025-10-07 15:11:51 +08:00
YunaiV
a18126a761 feat:【antd】【member 会员】完成 balance-form 的迁移与 bugfix 2025-10-07 15:11:46 +08:00
YunaiV
dabbeaae81 feat:【antd】【member 会员】完成 point-form 的迁移与 bugfix 2025-10-07 14:40:00 +08:00
YunaiV
3f1e48de54 feat:【antd】【member 会员】完成 level-form 的迁移与 bugfix 2025-10-07 14:26:35 +08:00
YunaiV
d53e1f0397 feat:【antd】【member 会员】完成 index 和 form 的重构 2025-10-07 14:19:12 +08:00
YunaiV
a60c29169b feat:【antd】【member 会员】完成 index 和 form 的重构 2025-10-07 14:18:48 +08:00
YunaiV
b9593c7a4a feat:【antd】【member 会员】将 detail 独立目录 2025-10-07 11:25:39 +08:00
YunaiV
e546247c0b fix:【ele】统一 InputNumber 的 controlsPosition 写法 2025-10-07 11:11:15 +08:00
YunaiV
9e89cdbced feat:【antd】【ele】【member 会员】signin 迁移 ele 2025-10-07 11:04:07 +08:00
YunaiV
8d34744deb fix:【antd】移除 controlsPosition ,因为 inputnumber 没这个属性,只有 ele 才有 2025-10-07 10:55:34 +08:00
YunaiV
64eed7b39a feat:【antd】【ele】【member 会员】signin 迁移 antd 2025-10-07 10:47:07 +08:00
YunaiV
3e5a1ea5aa feat:【antd】【ele】【member 会员】tag 迁移 ele 2025-10-07 10:44:11 +08:00
YunaiV
d00f8538fd feat:【antd】【ele】【member 会员】tag 迁移 antd 2025-10-07 10:42:04 +08:00
YunaiV
7b7323d519 feat:【antd】【ele】【member 会员】point 迁移 ele 2025-10-07 10:40:29 +08:00
YunaiV
960413ed58 feat:【antd】【ele】【member 会员】point 迁移 antd 2025-10-07 10:32:16 +08:00
YunaiV
ba47b627c8 feat:【antd】【ele】【member 会员】level 迁移 ele 2025-10-07 10:30:24 +08:00
YunaiV
2f6e7ced5e feat:【antd】【ele】【member 会员】level 迁移 antd 2025-10-07 10:14:23 +08:00
YunaiV
f6ca135efb feat:【antd】【ele】【member 会员】group 迁移 ele 2025-10-07 09:46:47 +08:00
YunaiV
d150475efb feat:【antd】【ele】【member 会员】group 迁移 antd 2025-10-07 09:40:52 +08:00
YunaiV
a025d12790 feat:【antd】【ele】【member 会员】config 迁移 ele 2025-10-07 09:35:01 +08:00
YunaiV
fb37b7eec3 feat:【antd】【ele】【member 会员】config 迁移 antd 2025-10-07 09:26:12 +08:00
zouawen
2ce161e585 feat: 1、新增水印文案自定义功能;2、input-item输入框组件新增清除功能(可用于快捷清除水印文案);3、偏好设置、主题切换、语言选择、是否全屏按钮新增动画效果 (#6800)
* feature: 新增水印文案自定义功能;

* chore: 偏好设置、主题切换、语言选择、是否全屏按钮新增动画效果
2025-10-07 06:15:41 +08:00
芋道源码
e4707ef380 !220 【antd】ERP、PAY 迁移彻底完成
Merge pull request !220 from 芋道源码/dev
2025-10-06 12:48:00 +00:00
YunaiV
825a052533 feat:【antd】【ele】【pay 支付】pay/cashier 迁移 antd、ele 版本 2025-10-06 20:45:29 +08:00
YunaiV
38040be98f feat:【antd】【ele】【pay 支付】pay/demo/withdraw 迁移 ele 版本 2025-10-06 20:37:19 +08:00
YunaiV
584dcd5819 feat:【antd】【ele】【pay 支付】pay/demo/withdraw 迁移 antd 版本 2025-10-06 20:29:12 +08:00
YunaiV
dd7e4d9513 feat:【antd】【ele】【pay 支付】pay/demo/withdraw 迁移 ele 版本 2025-10-06 20:15:17 +08:00
YunaiV
5d9af538fd feat:【antd】【ele】【pay 支付】pay/demo/order 迁移 ele 版本 2025-10-06 20:09:25 +08:00
YunaiV
fbd6c86ee4 feat:【antd】【ele】【pay 支付】pay/demo/order 迁移 antd 版本 2025-10-06 19:55:14 +08:00
YunaiV
9fd1c507a2 feat:【antd】【ele】【pay 支付】pay/demo/order 迁移 antd 版本 2025-10-06 19:48:41 +08:00
YunaiV
4f2ffc58f7 feat:【antd】【ele】【pay 支付】pay/wallet/package 迁移 antd、ele 版本 2025-10-06 17:41:59 +08:00
YunaiV
b2de0e2a29 feat:【antd】【ele】【pay 支付】pay/wallet/balance 迁移 ele 版本 2025-10-06 13:36:03 +08:00
YunaiV
385b5eaaec feat:【antd】【ele】【pay 支付】pay/wallet/balance 迁移 antd 版本 2025-10-06 13:06:57 +08:00
YunaiV
0627f5072d feat:【antd】【ele】【pay 支付】pay/notify 迁移 ele 版本 2025-10-06 11:11:51 +08:00
YunaiV
c168045639 feat:【antd】【ele】【pay 支付】pay/notify 迁移 antd 版本 2025-10-06 10:40:20 +08:00
YunaiV
96026b85b5 feat:【antd】【ele】【pay 支付】order/refund/transfer 导出的缺失补全 2025-10-06 09:33:43 +08:00
YunaiV
fcc6162692 feat:【antd】【ele】【pay 支付】pay/transfer 迁移 ele 版本 2025-10-06 09:18:37 +08:00
zouawen
33306a5aff chore: 更换其他登录方式图标为彩色图标,新增其他登录方式tooltip文字提示 (#6799) 2025-10-06 06:56:54 +08:00
YunaiV
b587032597 feat:【antd】【ele】【pay 支付】pay/transfer 迁移 antd 版本 2025-10-05 22:06:58 +08:00
YunaiV
25e434276a fix:【antd】【ele】【pay 支付】pay/refund 迁移 ele 版本 2025-10-05 21:48:00 +08:00
YunaiV
cb04558426 fix:【antd】【ele】【pay 支付】pay/refund 迁移 antd 版本 2025-10-05 21:42:12 +08:00
YunaiV
25fe87e94c fix:【antd】【ele】【pay 支付】pay/order 详情使用错接口 2025-10-05 21:30:04 +08:00
YunaiV
112a7dfb93 feat:【antd】【ele】【pay 支付】pay/order 在 ele 代码优化 2025-10-05 21:12:25 +08:00
YunaiV
73e64b468a feat:【antd】【ele】【pay 支付】pay/order 在 antd 代码优化 2025-10-05 20:45:55 +08:00
YunaiV
8f20182050 feat:【ele】【pay 支付】pay/app 代码优化 4/4(对齐 ele 和 antd) 2025-10-05 20:32:46 +08:00
YunaiV
22b0496428 feat:【ele】【pay 支付】pay/app 代码优化 3/4(对齐 ele 和 antd) 2025-10-05 20:13:32 +08:00
YunaiV
b2e2fe7ccb feat:【ele】【框架】调整 CellSwitch,使用 inlinePrompt 内嵌展示文案 2025-10-05 19:52:54 +08:00
YunaiV
5393623f45 feat:【ele】【框架】调整 CellSwitch,注释 activeText、inactiveText 禁用文字展示 2025-10-05 19:49:40 +08:00
YunaiV
e6e0621c20 feat:【antd】【pay 支付】pay/app 代码优化 2/4 2025-10-05 18:56:39 +08:00
YunaiV
7bdfa99042 feat:【antd】【pay 支付】pay/app 代码优化 1/4 2025-10-05 16:51:59 +08:00
YunaiV
98d7ed663f fix:【antd】【erp 系统】tableData.value.findIndex((item) => item.id === row.id) 不正确的问题,使用 seq 比对 2025-10-05 14:38:00 +08:00
YunaiV
c6bd38f98d fix:【antd】【erp 系统】finance/account 切换默认的逻辑未实现 2025-10-05 14:19:28 +08:00
YunaiV
8266490674 feat:【antd】【erp 系统】finance/receipt 的迁移 4/4(已完成) 2025-10-05 13:59:14 +08:00
YunaiV
ce709742fd feat:【antd】【erp 系统】finance/receipt 的迁移 4/4(已完成) 2025-10-05 13:59:01 +08:00
YunaiV
8789cd1ff2 feat:【antd】【erp 系统】统一审批接口的写法与调用 2025-10-05 11:12:19 +08:00
YunaiV
95ba94ee5e feat:【antd】【erp 系统】finance/receipt 的迁移 1/4(初始化) 2025-10-05 11:04:27 +08:00
YunaiV
9a17613823 feat:【antd】【erp 系统】finance/payment 的迁移 4/4(form 部分) 2025-10-05 10:52:17 +08:00
YunaiV
14dd95b915 feat:【antd】【erp 系统】finance/payment 的迁移 4/4(form 部分) 2025-10-05 10:52:13 +08:00
YunaiV
43533b5499 feat:【antd】【erp 系统】finance/payment 的迁移 2/4(form 部分) 2025-10-05 10:30:48 +08:00
YunaiV
af29a0e29b feat:【antd】【erp 系统】finance/payment 的迁移 2/4(form 部分) 2025-10-05 10:19:22 +08:00
YunaiV
386919030d feat:【antd】【erp 系统】finance/payment 的迁移 1/4(列表 ok) 2025-10-05 09:28:53 +08:00
YunaiV
02adb68581 feat:【antd】【erp 系统】库存相关的 3 位保留的补全 2025-10-05 09:19:39 +08:00
YunaiV
f98cef8c71 feat:【antd】【erp 系统】stock/check 1/1 重构完成 2025-10-05 09:00:39 +08:00
YunaiV
9567fb39c1 feat:【antd】【erp 系统】stock/move 1/1 重构完成 2025-10-05 08:52:58 +08:00
YunaiV
33de8dcdf2 feat:【antd】【erp 系统】stock/out 1/1 重构完成 2025-10-04 22:34:25 +08:00
YunaiV
a6c4fde2c4 feat:【antd】【erp 系统】stock/in 1/1 重构完成 2025-10-04 21:52:37 +08:00
YunaiV
a7c4e6ac11 feat:【antd】【erp 系统】purchase/in 重构 4/4(bugfix) 2025-10-04 21:34:11 +08:00
YunaiV
7d3f5dc149 feat:【antd】【erp 系统】purchase/return 重构 4/4 2025-10-04 21:26:43 +08:00
YunaiV
7d9b3f89fa feat:【antd】【erp 系统】purchase/return 重构 2/4 2025-10-04 21:14:41 +08:00
YunaiV
1350342715 feat:【antd】【erp 系统】purchase/return 重构 1/4 2025-10-04 21:04:30 +08:00
YunaiV
655b3d87c0 feat:【antd】【erp 系统】purchase/in 重构 4/4 2025-10-04 20:52:20 +08:00
YunaiV
ff2f176917 feat:【antd】【erp 系统】purchase/in 重构 4/4 2025-10-04 20:37:30 +08:00
YunaiV
f7c0b41199 feat:【antd】【erp 系统】purchase/in 重构 1/4 2025-10-04 20:05:58 +08:00
YunaiV
c401000eb9 feat:【antd】【erp 系统】purchase/order 重构 4/4 2025-10-04 20:00:37 +08:00
YunaiV
9406593d6e feat:【antd】【erp 系统】purchase/order 重构 3/4 2025-10-04 19:37:28 +08:00
YunaiV
2039cbc0d0 feat:【antd】【erp 系统】purchase/order 重构 2/4 2025-10-04 19:27:44 +08:00
YunaiV
5e13d28d46 feat:【antd】【erp 系统】purchase/order 重构 1/4 2025-10-04 19:18:22 +08:00
YunaiV
7250934a41 feat:【antd】【erp 系统】sale 重构代码风格(增加已出库等动态列) 2025-10-04 17:07:58 +08:00
YunaiV
dd9fd6e284 feat:【antd】【erp 系统】sale 重构代码风格(修复“优惠后金额”未计算的问题) 2025-10-04 16:48:03 +08:00
YunaiV
888a6d9ec8 feat:【antd】【erp 系统】sale 重构代码风格(处理文案等) 2025-10-04 16:29:36 +08:00
YunaiV
a9c9e0f8b2 feat:【antd】【erp 系统】stock/stock 重构代码风格 2025-10-04 15:44:11 +08:00
YunaiV
34167a38de feat:【antd】【erp 系统】stock/record 重构代码风格 2025-10-04 15:39:56 +08:00
YunaiV
b0c32a2a18 feat:【antd】【erp 系统】finance/account 重构代码风格 2025-10-04 15:31:26 +08:00
YunaiV
f63cb9ed2f feat:【antd】【erp 系统】sale/return 重构初始化 2025-10-04 15:16:51 +08:00
YunaiV
480ed5c83d feat:【antd】【erp 系统】sale/out 全部重构 ok 2025-10-04 15:04:12 +08:00
YunaiV
3182a86b80 feat:【antd】调整 formatNumber 为 formatAmount3 保留 3 位,formatAmount2 保留 2 位 2025-10-04 14:53:31 +08:00
YunaiV
ceabd731ba feat:【antd】【erp 系统】sale/out 部分重构(sale-order-select) 2025-10-04 14:45:03 +08:00
YunaiV
40b5d952eb feat:【antd】【erp 系统】sale/out 部分重构(form 基本重构完) 2025-10-04 10:56:40 +08:00
YunaiV
86e701ba3a feat:【antd】【erp 系统】sale/out 部分重构(form 部分重构 +1) 2025-10-04 10:21:14 +08:00
YunaiV
c603b7002c feat:【antd】【erp 系统】sale/out 部分重构(form 部分重构) 2025-10-04 09:52:40 +08:00
YunaiV
c8c4693983 feat:【antd】【erp 系统】sale/out 部分重构(列表 ok) 2025-10-04 09:15:11 +08:00
YunaiV
e073a40153 feat:【antd】【erp 系统】sale/out 部分重构(列表 ok) 2025-10-04 09:15:01 +08:00
YunaiV
d5712f2640 feat:【antd】【erp 系统】sale/order 重构完成 2025-10-03 20:54:22 +08:00
YunaiV
83cffeafc3 feat:【antd】【erp 系统】sale/order 部分代码优化(form 基本完善) 2025-10-03 20:38:44 +08:00
YunaiV
95295d5b93 feat:【框架】form-api 增加 disabled 控制的能力 2025-10-03 20:15:31 +08:00
YunaiV
e9fafab07c feat:【antd】【erp 系统】sale/order 部分代码优化(form 继续优化代码) 2025-10-03 20:06:05 +08:00
YunaiV
945e0902ae feat:【antd】【erp 系统】sale/order 部分代码优化(form 修复 init 问题) 2025-10-03 19:37:56 +08:00
YunaiV
b57cbc798a feat:【antd】【erp 系统】sale/order 部分代码优化(form 中量) 2025-10-03 18:36:05 +08:00
YunaiV
3f0c60be04 feat:【antd】【erp 系统】sale/order 部分代码优化(form 中量) 2025-10-03 18:26:30 +08:00
YunaiV
3902005ad4 feat:【antd】【erp 系统】sale/order 部分代码优化(form 少量) 2025-10-03 17:21:08 +08:00
YunaiV
8d897e89a3 feat:【antd】【erp 系统】sale/order 部分代码优化 2025-10-03 16:14:30 +08:00
YunaiV
1a33f2562e feat:【antd】【erp 系统】customer 迁移 2025-10-03 11:50:26 +08:00
YunaiV
c208c56f72 feat:【antd】【erp 系统】warehouse 迁移 2025-10-03 11:38:08 +08:00
YunaiV
2572824d1a feat:【antd】【erp 系统】warehouse 迁移 2025-10-03 11:37:34 +08:00
YunaiV
85b6d0c4d6 feat:【antd】【erp 系统】supplier 迁移 2025-10-03 10:12:00 +08:00
YunaiV
eeb1f1ebf9 feat:【antd】【erp 系统】product 迁移 2025-10-03 09:55:03 +08:00
YunaiV
325cede2ed feat:【antd】【ele】统一 await formApi.setValues(formData.value); 的写法 2025-10-03 09:07:01 +08:00
YunaiV
7934cbdd7b feat:【antd】【erp 系统】product unit 迁移 2025-10-03 08:58:11 +08:00
YunaiV
f3390427ac feat:【antd】【erp 系统】product category 迁移 2025-10-03 08:52:55 +08:00
YunaiV
bfbf97874c feat:【antd】【erp 系统】product category 迁移 2025-10-03 08:50:43 +08:00
YunaiV
76b00821cb feat:【antd】【erp 系统】home 界面的代码优化 2025-10-02 20:14:20 +08:00
YunaiV
1bf4238609 Merge branch 'master' of https://github.com/yudaocode/yudao-ui-admin-vben into dev 2025-10-02 16:17:02 +08:00
芋道源码
63f58fa84d !219 【antd】CRM 迁移彻底完成
Merge pull request !219 from 芋道源码/dev
2025-10-02 08:10:55 +00:00
YunaiV
463a9fb509 fix:【pay 支付】微信支付 publicKeyContent 调整为非必填,兼容 https://t.zsxq.com/ODR5V、https://gitee.com/yudaocode/yudao-ui-admin-vue3/issues/ICUE53 2025-10-02 10:24:10 +08:00
YunaiV
783f510229 fix:【bpm 工作流】已办任务的审批状态过滤不正确 2025-10-02 09:35:46 +08:00
YunaiV
92c433a6aa feat:【antd】【ele】统一 infra 和 system 的代码风格(demo03/normal) 2025-10-01 13:00:13 +08:00
YunaiV
599e1b342a feat:【antd】【ele】统一 infra 和 system 的代码风格(demo03/inner) 2025-10-01 12:44:06 +08:00
YunaiV
2e2a147815 feat:【antd】【ele】统一 infra 和 system 的代码风格(demo03/erp) 2025-10-01 10:48:23 +08:00
YunaiV
67b39cfe8a feat:【antd】【ele】统一 infra 和 system 的代码风格(demo01、demo02) 2025-10-01 09:49:04 +08:00
YunaiV
cdc0cbc431 feat:【antd】【crm】团队成员的代码实现 2025-09-30 22:23:54 +08:00
YunaiV
5eec2050a9 feat:【antd】【crm】跟进记录的代码优化 2025-09-30 22:13:37 +08:00
YunaiV
3708af6738 feat:【antd】【crm】回款的新增/修改的时,正确处理合同 2025-09-30 20:52:00 +08:00
YunaiV
6b0d783564 feat:【antd】【crm】修改时,负责人不允许直接修改 2025-09-30 20:01:37 +08:00
lw567
6e03de5011 fix: watermark create error #6788 (#6789)
Co-authored-by: liwei567 <liwei567@example.com>
2025-09-30 19:53:09 +08:00
YunaiV
6410c83b13 feat:【antd】【crm】修改时,负责人不允许直接修改 2025-09-30 19:51:24 +08:00
YunaiV
9e6d8ff3e9 feat:【antd】【crm】调整操作日志和团队成员的标签顺序,优化表单字段的规则和属性 2025-09-30 19:42:20 +08:00
YunaiV
0f6868febf feat:【antd】【crm】将 defineAsyncComponent 调整成 export 2025-09-30 15:24:00 +08:00
YunaiV
0d07db46f0 feat:【antd】【crm】优化整体的 allowClear 2025-09-30 14:56:55 +08:00
YunaiV
2d5f24c626 feat:【antd】【crm】优化 statistics 的整体代码 2025-09-30 13:16:52 +08:00
YunaiV
0d1901abdb feat:【antd】【crm】优化 backlog 的整体代码 2025-09-30 13:08:46 +08:00
YunaiV
f381f934e8 feat:【antd】【crm】优化 receivable-plan 的整体代码风格 2025-09-30 09:56:35 +08:00
YunaiV
05ec6a16b3 feat:【antd】【crm】优化 receivable-plan 的整体代码风格 2025-09-30 09:24:52 +08:00
jason
4edecbf3fa Merge remote-tracking branch 'yudao/dev' into dev 2025-09-30 09:11:48 +08:00
HaHa
713281a8ba fix(theme-button): fix flicker during theme switch (#6782) 2025-09-30 05:10:51 +08:00
shierd
42e3de9e2c fix: 修复设置表单值时合并子对象的错误 (#6780)
Co-authored-by: shier <shier@shierd.com>
2025-09-30 05:10:39 +08:00
vent
1e029dbc9a fix: 修复部分场景 echarts 在使用 v-show 时获取不到 width 的问题 (#6776) 2025-09-30 05:09:33 +08:00
YunaiV
0afd36172b feat:【antd】【crm】优化 receivable-plan 的整体代码风格 2025-09-29 23:32:16 +08:00
YunaiV
9bfd314311 feat:【antd】【crm】优化 receivable 的整体代码风格 2025-09-29 23:19:46 +08:00
YunaiV
e441978662 feat:【antd】【crm】优化 receivable 的整体代码风格 2025-09-29 09:47:16 +08:00
YunaiV
985dca4990 feat:【antd】【crm】优化合同的整体代码风格 2025-09-29 09:16:44 +08:00
YunaiV
a4aa2b7711 feat:【antd】【crm】优化合同的整体代码风格 2025-09-29 09:16:16 +08:00
YunaiV
876768e98d feat:【antd】【crm】优化合同的整体代码风格 2025-09-29 08:41:41 +08:00
YunaiV
41530a40e5 feat:【antd】【crm】优化合同配置的代码 2025-09-28 23:09:44 +08:00
YunaiV
252b530526 feat:【antd】【crm】商机状态的代码优化 2025-09-28 23:00:40 +08:00
YunaiV
9c564ea3af feat:【antd】【crm】商机的整体代码结构优化 2025-09-28 22:46:00 +08:00
YunaiV
1a3441b662 feat:【antd】【crm】商机的整体代码结构优化 2025-09-28 21:06:08 +08:00
YunaiV
c60c2a5b76 feat:【antd】【crm】商机的整体代码结构优化 2025-09-28 21:04:20 +08:00
YunaiV
3d2a53a6b2 feat:【antd】【crm】产品的 components 优化 2025-09-28 20:00:06 +08:00
YunaiV
ee3af0293b feat:【antd】【crm】产品的列表、详情优化 2025-09-28 13:02:10 +08:00
YunaiV
43c3169c54 feat:【antd】【crm】产品分类的代码优化 2025-09-28 09:51:07 +08:00
YunaiV
968552ec4b feat:【antd】【crm】客户公海分配 form 的优化 2025-09-27 21:10:02 +08:00
YunaiV
3ba046def7 feat:【antd】【crm】客户公海分配 form 的优化 2025-09-27 21:08:08 +08:00
YunaiV
9dd6e0f687 feat:【antd】【crm】客户公海配置优化 2025-09-27 20:40:34 +08:00
YunaiV
45fb4dc3fe feat:【antd】【crm】客户限制配置的重构与修复部分缺陷 2025-09-27 17:19:54 +08:00
YunaiV
082fddcb64 feat:【antd】【crm】线索、联系人的详情,改成 TableAction 实现 2025-09-27 17:04:06 +08:00
YunaiV
10018fcc85 feat:【antd】【crm】客户的详情的重构 2025-09-27 16:56:36 +08:00
YunaiV
09abc9cead feat:【antd】【crm】客户的列表的重构 2025-09-27 16:36:18 +08:00
YunaiV
06633c336e feat:【antd】【crm】联系人列表和详情组件的重构与优化 2025-09-27 15:44:55 +08:00
YunaiV
84bb8331c2 feat:【antd】【crm】contact 详情的优化 2025-09-27 15:25:09 +08:00
YunaiV
af291928ad review:【antd】流程设计器、文件上传等 2025-09-27 14:02:47 +08:00
xingyu4j
f50ca431ec docs: readme 2025-09-26 13:48:15 +08:00
xingyu4j
9936be1346 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-09-26 13:46:48 +08:00
xingyu4j
a56ab2212d fix: lint 2025-09-26 13:46:21 +08:00
xingyu
27d767f812 !218 ele:重新封装上传组件、新增 CronTab CRON 表达式配置组件
Merge pull request !218 from puhui999/dev-ele
2025-09-26 05:43:12 +00:00
puhui999
8229ca1335 fix:【ele】代码生成预览 2025-09-26 11:12:32 +08:00
puhui999
f0fbaf45f4 refactor:【ele】重新封装上传组件 2025-09-26 10:52:30 +08:00
YunaiV
0d018c37c5 feat:【antd】【crm】contact form 的优化 2025-09-26 08:38:57 +08:00
YunaiV
3c0723d82f feat:【antd】【crm】contact 列表的优化 2025-09-25 23:39:44 +08:00
YunaiV
655940bc4f feat:【antd】【crm】contact 整体结构调整 2025-09-25 21:39:06 +08:00
puhui999
c64c770f54 feat:【ele】新增 CronTab CRON 表达式配置组件、JOB 表单优化 2025-09-25 17:05:26 +08:00
xingyu4j
daf0cd9f27 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-09-25 16:35:19 +08:00
xingyu
7157254482 !217 上传组件增加 modelValue 参数适配,同时支持 modelValue 和 value 参数(适配 FormCreate)
Merge pull request !217 from puhui999/dev-form-create
2025-09-25 08:32:33 +00:00
puhui999
1f1a26bc11 feat:【antd】优化 bpmn-process-designer 组件图标 2025-09-25 11:52:26 +08:00
puhui999
510825bb49 feat:【antd】图片上传组件增加 modelValue 参数适配,同时支持 modelValue 和 value 参数(适配 FormCreate) 2025-09-25 11:29:10 +08:00
xingyu4j
0b64363eeb Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-09-25 11:23:52 +08:00
puhui999
fbeeb151ff feat:【antd】文件上传组件增加 modelValue 参数适配,同时支持 modelValue 和 value 参数(适配 FormCreate) 2025-09-25 11:16:56 +08:00
YunaiV
484cd432fe feat:【antd】【crm】基本完成代码风格优化和统一 2025-09-25 09:38:51 +08:00
puhui999
9bd1252dd6 feat:【antd】优化 bpmn-process-designer penal 样式 2025-09-24 20:45:30 +08:00
xingyu4j
808b2970ca fix: lint 2025-09-24 18:08:21 +08:00
xingyu4j
b26f9b1380 feat: use common-ui ContentWrap 2025-09-24 15:05:23 +08:00
xingyu4j
80b2e4fce4 feat: add ContentWrap comp 2025-09-24 15:04:29 +08:00
xingyu4j
0cfdbe75e4 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-09-24 14:30:35 +08:00
xingyu4j
959c747f69 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-09-24 14:17:22 +08:00
puhui999
aaa821fbee fix:【antd】移除 bpmn-process-designer 不必要的编译器宏导入 2025-09-24 11:07:34 +08:00
YunaiV
8324295ee6 feat:【antd】【crm】重构 clue detail 路由 2025-09-24 09:52:31 +08:00
YunaiV
7dc6929b79 feat:【antd】【crm】增加 clue detail 的优化想法 2025-09-24 09:36:46 +08:00
Cup_Of_Bread
81bb7456f8 fix: 修复注解错误 (#6763) 2025-09-23 23:49:25 +08:00
pangyajun123
26f8d2aa30 perf: 表单需要通过权限控制是否需要展示,dependencies.if 这种方式需要别triggerFields触发字段,不能满足要求 (#6756) 2025-09-23 23:48:27 +08:00
YunaiV
95ce3e40f7 feat:【antd】【crm】优化 clue 线索的列表界面 2025-09-23 23:47:09 +08:00
boisduval
a8b848d367 fix: 解决搜索表单中arrayToStringFields属性无法在搜索时生效的问题 (#6591)
- 合并handleArrayToStringFields与handleStringToArrayFields为handleMultiFields
- 在handleMultiFields判断arrayToString或stringToArray
- 删除两个方法在其他地方的引用 统一为在handleRangeTimeValue内调用handleMultiFields实现数据转换

Co-authored-by: 宛晴 <wanqing@mengtaigroup.com>
2025-09-23 23:45:26 +08:00
YunaiV
634b5be676 feat:【antd】【crm】优化 clue 线索的列表界面 2025-09-23 23:44:56 +08:00
xingyu4j
d3513782b0 fix: mp api 2025-09-23 15:07:59 +08:00
xingyu4j
b7bb7ecd5d Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-09-23 14:52:15 +08:00
YunaiV
94c5c4c57e feat:【antd】【ele】统一 infra 和 system 的代码风格 2025-09-23 09:42:06 +08:00
YunaiV
5ddc25f4f2 feat:【antd】【ele】统一 mail/template 的实现 2025-09-23 09:21:08 +08:00
YunaiV
3c67ecada0 feat:【antd】【ele】统一 dataSourceConfig 的实现 2025-09-23 08:31:14 +08:00
YunaiV
af74cf6ad9 feat:【antd】【ele】统一 infra 和 system 的代码风格 2025-09-23 00:04:41 +08:00
xingyu4j
a143e0cee3 fix: lint 2025-09-22 18:53:39 +08:00
xingyu4j
b6d7dda0b3 fix: 空白页面关闭后其他页面无法正常显示 2025-09-22 18:40:00 +08:00
xingyu4j
ac82b49425 fix: iframe 2025-09-22 18:31:02 +08:00
xingyu4j
be1250e71a fix: mp tag 2025-09-22 18:13:52 +08:00
xingyu4j
47c0c847eb feat: 统一消息提醒 2025-09-22 18:06:09 +08:00
YunaiV
a1e756c0e5 feat:【antd】【ele】统一 api 的 system、infra 实现 2025-09-22 12:58:22 +08:00
YunaiV
6ca2b0f1ca feat:【antd】【ele】统一 codegen、file 的 API 参数 2025-09-22 09:59:22 +08:00
YunaiV
c9f123be2a feat:【antd】数据源管理,增加批量删除 2025-09-22 09:24:05 +08:00
YunaiV
38919dfc8e fix:【antd】【ele】activeMenu => activePath 解决激活菜单 2025-09-21 21:59:01 +08:00
芋道源码
d21031ecf4 Merge pull request #125 from inside5545/master
fix:流程表单字典选择器无法正常回显
2025-09-21 11:22:46 +08:00
苏俊言
c4babbecf0 fix:流程表单字典选择器无法正常回显 2025-09-20 16:55:41 +08:00
YunaiV
ca3fae4611 fix:【pay 支付】收银界面,关闭后清理定时轮询 2025-09-20 12:45:40 +08:00
YunaiV
65d24fa6be feat:【antd】【bpm 工作流】开启流程类型的 BPMN 的配置 2025-09-20 10:17:28 +08:00
xingyu
45a5c9bc8e !214 merge dev
Merge pull request !214 from xingyu/dev
2025-09-19 08:20:33 +00:00
xingyu4j
66e2158fa7 chore: ele 缺失 tinymce 依赖 2025-09-19 16:18:40 +08:00
xingyu4j
d9a543ffaa fix: lint 2025-09-19 16:12:16 +08:00
xingyu4j
a75754c2ec fix: ele 不存在InputPassword组件 2025-09-19 16:09:45 +08:00
xingyu4j
033bd21ff8 fix: assign menu form 2025-09-19 16:09:14 +08:00
xingyu4j
2f55bca2e4 fix: 使用Tree替换原有VbenTree 2025-09-19 16:08:23 +08:00
xingyu4j
7689aff790 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-09-18 17:58:14 +08:00
ming4762
482ce981ce chore: update deps vxe, vxe-table: 4.14.4 -> 4.16.11 vxe-pc-ui: 4.7.… (#6752)
* chore: update deps vxe, vxe-table: 4.14.4 -> 4.16.11  vxe-pc-ui: 4.7.12 -> 4.9.29

* fix: resolve the ESLint warning generated by #6317
2025-09-17 17:42:39 +08:00
Jin Mao
97ad93ab1f Merge branch 'zouawen-main' 2025-09-17 17:41:05 +08:00
Jin Mao
319b7fcdaa Merge branch 'main' of https://github.com/zouawen/vue-vben-admin into zouawen-main 2025-09-17 17:37:43 +08:00
Jin Mao
4de8220ce6 feat(common-ui): 添加 Tree 组件
- 在 common-ui 包中新增 Tree 组件
- 实现了基本的树形结构展示功能
- 集成了 VbenTree 组件和自定义样式- 添加了空数据时的占位展示
2025-09-17 17:28:39 +08:00
xingyu
fce9536213 !213 bpmn 流程模型设计器 bpmn-process-designer 整合
Merge pull request !213 from puhui999/dev
2025-09-15 10:31:45 +00:00
xingyu4j
e0c2ebae8a Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-09-15 13:56:25 +08:00
xingyu4j
3c5285ba72 chore: 恢复 单引号 2025-09-15 13:56:03 +08:00
xingyu4j
65bbccbe9e Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-09-15 13:41:30 +08:00
puhui999
058e20d311 style: 移除 bpmn-process-designer element-variables.scss 2025-09-15 11:37:12 +08:00
puhui999
2458046afe fix: bpmn-process-designer SelectOption 标题展示问题 2025-09-15 11:18:45 +08:00
puhui999
40e04f773d fix: bpmn-process-designer structuredClone => cloneDeep 2025-09-15 11:05:25 +08:00
puhui999
9e3b4461cf fix: 修复 bpmn-process-designer 图标使用问题,使用 h 函数 2025-09-15 10:44:36 +08:00
puhui999
9af3745670 feat: bpmn 流程模型设计器 bpmn-process-designer 整合 2025-09-15 10:23:17 +08:00
puhui999
26f00f3d37 refactor: 重构 bpmnProcessDesigner => bpmn-process-designer 2025-09-15 09:43:52 +08:00
芋道源码
391f08804f !212 迁移重构 bpmnProcessDesigner 组件 ele => antd
Merge pull request !212 from puhui999/dev
2025-09-15 01:17:14 +00:00
Jin Mao
9114692f95 Merge branch 'main' into main 2025-09-15 08:08:31 +08:00
Jin Mao
0f7731b611 Merge branch 'ming4762-stream-2025091101' 2025-09-15 08:03:52 +08:00
Jin Mao
8040bc1a22 Merge branch 'stream-2025091101' of https://github.com/ming4762/smart-boot-ui-vben into ming4762-stream-2025091101 2025-09-15 08:02:30 +08:00
oc
11d273cbb6 feat(authentication): 二维码登录和验证码登录组件增加返回按钮显隐配置 (#6713)
- 在 CodeLogin 和 QrcodeLogin 组件中添加 showBack 属性
- 根据 showBack 属性决定是否显示返回按钮
- 默认值为 true,即默认显示返回按钮
2025-09-15 07:43:18 +08:00
puhui999
85de19a422 Merge remote-tracking branch 'yudao/dev' into dev 2025-09-14 19:54:23 +08:00
puhui999
9f1c3831fa refactor: 重构 bpmnProcessDesigner 组件 ele => antd 2025-09-14 19:53:25 +08:00
puhui999
6ffd3dbd67 refactor: 重构 bpmnProcessDesigner 组件 ele => antd 2025-09-14 18:20:11 +08:00
puhui999
71dd9f2d88 refactor: 重构 bpmnProcessDesigner 组件 ele => antd 2025-09-14 18:16:02 +08:00
zouawen
a4b8f8f795 fix: 节点选中时过滤父节点禁用状态 2025-09-12 17:31:42 +08:00
xingyu4j
39081139e2 fix: element-plus button 的 text 类型,后续会废弃 2025-09-12 16:38:25 +08:00
xingyu4j
2c5557aa30 fix: codegen demo 2025-09-12 16:14:16 +08:00
xingyu
5f5fb9e544 !211 fix(system): 角色管理分配菜单使用简化菜单列表接口
Merge pull request !211 from Lex/dev
2025-09-12 03:35:50 +00:00
Lex
94d44340a3 fix(system): 角色管理分配菜单使用简化菜单列表接口
- 在 web-antd、web-ele 和 web-naive 应用中,修改了角色管理模块的分配菜单表单
- 将原有的 getMenuList() 调用替换为 getSimpleMenusList(),用于【角色分配菜单】功能的选项。在多租户的场景下,会只返回租户所在套餐有的菜单
2025-09-12 10:19:08 +08:00
zouawen
dfa2ac3435 fix: 全选时过滤disabled的节点 2025-09-11 18:16:10 +08:00
zouawen
39820c783c fix:
1、VbenTree新增是否全选、展开折叠功能;
2、解决当点击子节点label文字区域,而非checkbox时,关联父组件不能选中问题;
3、优化子节点选中时关联父节点选中功能:删除VbenTree中processParentSelection方法,改为在onSelect中实现,原因:processParentSelection在每次模型值更新时都会被调用,且计算复杂度为O(n^2),onSelect只在交互时触发,复杂度为O(n);
4、新增中间层tree组件,处理无数据时显示场景(显示图标Inbox和国际化comom.noData文本);
5、为防止父组件传值子组件boolean类型默认false问题,新增treePropsDefaults方法,为TreeProps赋默认值,Tree组件和VbenTree组件统一使用;
6、优化VbenTree组件整体样式(优化padding、margin、gap值,优化type为button时outline左右空白区域不对称问题),优化内部header、footer插槽样式。
2025-09-11 16:41:42 +08:00
xingyu4j
ccbcb3d9bf docs: readme 2025-09-11 14:48:25 +08:00
zhongming4762
66822a5f95 feat: add SSE support to request-client 2025-09-11 11:22:47 +08:00
zhongming4762
eb4f1f8164 feat: add SSE support to request-client 2025-09-11 10:50:19 +08:00
jason
8637f8a5c0 Merge remote-tracking branch 'yudao/dev' into dev 2025-09-11 09:26:22 +08:00
YunaiV
e3e3c2e968 reactor:统一 Description 命名为 Descriptions 2025-09-10 23:58:31 +08:00
YunaiV
5ec4d8ab82 reactor:【infra 基础设施】infra 的 job、joblogger 描述的统一 2025-09-10 23:50:56 +08:00
YunaiV
21f76355fa reactor:【infra 基础设施】infra 的 job、joblogger 描述的统一 2025-09-10 22:33:38 +08:00
puhui999
a277f0fa03 refactor: 重构 bpmnProcessDesigner 组件 ele => antd 2025-09-10 15:39:32 +08:00
puhui999
6759bd1b77 refactor: 重构 bpmnProcessDesigner listeners 组件 ele => antd 2025-09-10 15:03:49 +08:00
xingyu4j
4cb1ecfb1c refactor: 移动 iframe 到 @vben/common-ui 2025-09-10 11:55:09 +08:00
puhui999
f17e4fdc58 refactor: 重构 bpmnProcessDesigner 组件 ele => antd 2025-09-10 11:30:08 +08:00
YunaiV
b3a4a91a25 reactor:【system 系统管理】notifymessage、operatelog、socialuser 2025-09-10 09:53:55 +08:00
YunaiV
6bf1392edf reactor:【system 系统管理】loginlog、maillog、smslog 的描述统一 2025-09-10 00:37:49 +08:00
YunaiV
69b662bb53 reactor:【system 系统管理】loginlog、maillog、smslog 的描述统一 2025-09-10 00:29:08 +08:00
YunaiV
68f64c9d67 reactor:【infra 基础设施】build 进一步统一代码风格 2025-09-09 23:24:31 +08:00
芋道源码
0bff8bd7a9 !210 feat: ele table-toolbar
Merge pull request !210 from 芋道源码/dev-vxe
2025-09-09 15:17:55 +00:00
YunaiV
16f4892fac reactor:【infra 基础设施】codegen 进一步统一代码风格(100%) 2025-09-09 23:11:33 +08:00
YunaiV
044db12224 reactor:【infra 基础设施】codegen 进一步统一代码风格(50%) 2025-09-09 22:58:58 +08:00
xingyu4j
a5156f1e10 feat: ele table-toolbar 2025-09-09 19:44:07 +08:00
YunaiV
08b4176fb3 reactor:【infra 基础设施】job/logger 进一步统一代码风格 2025-09-09 18:44:42 +08:00
puhui999
b913ece251 refactor: 重构 bpmnProcessDesigner 组件 ele => antd 2025-09-09 17:49:46 +08:00
puhui999
be276ac651 refactor: 重构 bpmnProcessDesigner 组件 ele => antd 2025-09-09 17:43:40 +08:00
xingyu4j
29e5017913 feat: table-toolbar 2025-09-09 17:04:57 +08:00
YunaiV
b3a65f2492 reactor:【infra 基础设施】job 进一步统一代码风格 2025-09-09 13:18:27 +08:00
YunaiV
96158f22b9 reactor:【infra 基础设施】config 进一步统一代码风格 2025-09-09 12:20:48 +08:00
YunaiV
8d10030185 reactor:【infra 基础设施】file 进一步统一代码风格 2025-09-09 09:56:09 +08:00
YunaiV
cdc350cef9 reactor:【infra 基础设施】fileConfig 进一步统一代码风格 2025-09-09 09:06:46 +08:00
YunaiV
b52f7803ad reactor:【infra 基础设施】fileConfig 进一步统一代码风格 2025-09-09 09:06:42 +08:00
YunaiV
6bb4005ae0 reactor:【infra 基础设施】redis 进一步统一代码风格 2025-09-08 23:51:07 +08:00
YunaiV
58ed3bfc2e reactor:【system 系统管理】infra 的 apiErrorLog 进一步统一代码风格 2025-09-08 23:42:43 +08:00
YunaiV
cec3b7ab1e reactor:【system 系统管理】infra 的 apiAccessLog 进一步统一代码风格 2025-09-08 23:25:33 +08:00
YunaiV
2e38b1906d fix:【element-plus】getRangePickerDefaultProps 默认结束为 23:59:59 2025-09-08 23:24:02 +08:00
YunaiV
51d2d66f76 fix:【element-plus】button 的 text 类型,后续会废弃 2025-09-08 23:00:53 +08:00
YunaiV
2becb1b09d reactor:【system 系统管理】menu 进一步统一代码风格 2025-09-08 22:53:18 +08:00
puhui999
3665e655e2 refactor: 重构 bpmnProcessDesigner 组件 ele => antd 2025-09-08 17:36:21 +08:00
YunaiV
3564c123a1 reactor:【system 系统管理】menu 进一步统一代码风格(暂时只包括 element-plus) 2025-09-08 13:12:57 +08:00
YunaiV
96dadf9971 reactor:【system 系统管理】user 进一步统一代码风格(dept tree) 2025-09-08 12:51:07 +08:00
YunaiV
28df31cc37 reactor:【system 系统管理】user 进一步统一代码风格 2025-09-08 09:52:43 +08:00
puhui999
ed1b152a39 refactor: 重构 bpmnProcessDesigner ProcessPalette 组件 ele => antd 2025-09-07 19:36:10 +08:00
puhui999
3036a174fc refactor: 重构 bpmnProcessDesigner designer 模块 ele => antd 2025-09-07 19:25:34 +08:00
YunaiV
74ffefb09f fix:【infra 基础设施】websocket 推送,无法选中所有人 2025-09-06 21:21:43 +08:00
YunaiV
4cbbad4d40 reactor:【system 系统管理】tenantPackage 进一步统一代码风格 2025-09-06 20:54:48 +08:00
YunaiV
942c4ef389 reactor:【system 系统管理】tenant 进一步统一代码风格 2025-09-06 20:46:33 +08:00
YunaiV
35bd5adf45 reactor:【system 系统管理】social 进一步统一代码风格 2025-09-06 20:32:46 +08:00
YunaiV
8d5a6d8aa0 reactor:【system 系统管理】role 进一步统一代码风格 2025-09-06 20:17:38 +08:00
YunaiV
6d47871f02 reactor:【system 系统管理】operate 进一步统一代码风格 2025-09-06 19:55:38 +08:00
YunaiV
1d11ebad3a reactor:【system 系统管理】oauth2/token 进一步统一代码风格 2025-09-06 19:47:13 +08:00
YunaiV
c9e782fefe reactor:【system 系统管理】oauth2/client 进一步统一代码风格 2025-09-06 19:38:48 +08:00
YunaiV
4bdd5552dd feat:【element-plus】form schema 支持 InputTag 组件 2025-09-06 19:38:35 +08:00
YunaiV
03618a6265 reactor:【system 系统管理】sms/template 进一步统一代码风格 2025-09-06 17:36:04 +08:00
YunaiV
15359ab9a3 reactor:【system 系统管理】sms/channel 进一步统一代码风格 2025-09-06 17:18:17 +08:00
YunaiV
965ccdbea1 reactor:【system 系统管理】notify/my 进一步统一代码风格 2025-09-06 16:39:52 +08:00
YunaiV
11f507ed2b reactor:【system 系统管理】notify/message 进一步统一代码风格 2025-09-06 16:13:49 +08:00
YunaiV
94d778c0df reactor:【system 系统管理】notify/template 进一步统一代码风格 2025-09-06 15:44:02 +08:00
YunaiV
a38e55651b reactor:【system 系统管理】岗位 post 进一步统一代码风格 2025-09-06 15:12:58 +08:00
YunaiV
5f77cde53f reactor:【system 系统管理】mail/log 进一步统一代码风格 2025-09-06 11:21:34 +08:00
YunaiV
9565de2b5c reactor:【system 系统管理】mail/template 进一步统一代码风格 2025-09-06 11:13:27 +08:00
YunaiV
e3b2f944a8 reactor:【system 系统管理】mail/account 进一步统一代码风格 2025-09-06 10:37:26 +08:00
YunaiV
0539aece1b fix:【system 系统管理】ele、antd 的搜索清理属性不对的问题 2025-09-06 10:24:59 +08:00
YunaiV
fcaa81ff3b reactor:【system 系统管理】area、dept、dict、loginlog 进一步统一代码风格 2025-09-06 09:39:09 +08:00
YunaiV
84e32a0884 reactor:【system 系统管理】dict 在 element-plus 和 antd 保持一致 2025-09-06 00:20:05 +08:00
YunaiV
e81a759e0d reactor:element-plus 移除 loading 的 fullscreen = true(默认就是 true) 2025-09-05 23:39:33 +08:00
YunaiV
8d93c843ad reactor:【system 系统管理】area 在 element-plus 和 antd 保持一致 2025-09-05 23:27:12 +08:00
YunaiV
079dac3969 reactor:【system 系统管理】dept 部门管理的实现,对齐 ele 和 antd(处理上级逻辑) 2025-09-05 23:12:31 +08:00
YunaiV
330b06e024 reactor:【system 系统管理】dept 部门管理的实现,对齐 ele 和 antd(处理上级逻辑) 2025-09-05 22:59:23 +08:00
YunaiV
4183fee283 reactor:【system 系统管理】dept 部门管理的实现,对齐 ele 和 antd(isExpanded 放在 onRefresh 前面) 2025-09-05 22:46:50 +08:00
YunaiV
92044f8282 reactor:【system 系统管理】dept 部门管理的实现,对齐 ele 和 antd(handleAppend 注释文案统一) 2025-09-05 22:13:41 +08:00
YunaiV
4cd1be1a31 reactor:【system 系统管理】dept 部门管理的实现,对齐 ele 和 antd(pagerConfig 顺序) 2025-09-05 22:07:37 +08:00
YunaiV
c34fdcc5e8 reactor:【system 系统管理】dept 部门管理的实现,对齐 ele 和 antd(reserve 持久化树状态) 2025-09-05 21:22:57 +08:00
YunaiV
5776bf99f8 reactor:【system 系统管理】dept 部门管理的实现,对齐 ele 和 antd 2025-09-05 20:28:47 +08:00
xingyu4j
817a157645 feat: antdv mall spu form 2025-09-05 16:17:10 +08:00
puhui999
82fdcb5da5 feat: bpmnProcessDesigner 迁移(纯复制) 2025-09-05 15:38:09 +08:00
xingyu4j
f30a3451de fix: todo 2025-09-05 14:11:35 +08:00
xingyu4j
2369f06654 fix: crm todo 2025-09-05 13:16:29 +08:00
xingyu
2daebde092 !209 refactor: dict 抽离
Merge pull request !209 from 芋道源码/dev-dict
2025-09-05 04:30:09 +00:00
xingyu
a303a93a6d Merge branch 'dev' of gitee.com:yudaocode/yudao-ui-admin-vben into dev-dict
Signed-off-by: xingyu <xingyu4j@vip.qq.com>
2025-09-05 04:28:43 +00:00
xingyu4j
ffbaa89323 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-09-05 12:26:36 +08:00
xingyu4j
c288098e10 refactor: 破坏性更新 dict 抽离 2025-09-05 12:24:58 +08:00
xingyu4j
6e19749ca3 refactor: 破坏性更新 dict 抽离 2025-09-05 12:24:16 +08:00
xingyu4j
386370f640 refactor: 破坏性更新 dict 抽离 2025-09-05 12:10:52 +08:00
xingyu4j
5ef57590e0 refactor: 破坏性更新 dict 抽离 2025-09-05 12:00:24 +08:00
YunaiV
0bf1635090 reactor:去除多余的 data.id as number 2025-09-05 00:46:57 +08:00
YunaiV
a153a86142 reactor:【system 系统管理】notice 在 ele 和 antd 的代码一致性 2025-09-04 21:31:24 +08:00
xingyu4j
b79bebab18 refactor: dict 抽离 2025-09-04 20:42:56 +08:00
xingyu4j
48ec3e15ab refactor: 将字典从store 移动到@vben/stores 2025-09-04 18:36:05 +08:00
xingyu4j
cf8745d844 refactor: 将枚举和常量从utils移动到constants 2025-09-04 18:28:13 +08:00
xingyu4j
37fba1474e refactor: 将枚举和常量从utils移动到constants 2025-09-04 18:19:49 +08:00
xingyu4j
d7d445617f feat: format time 已经迁移到 @vben/utils 2025-09-04 10:18:03 +08:00
xingyu4j
6b3818ff40 fix: workflow 2025-09-04 10:17:08 +08:00
xingyu4j
e7e2ebdb73 refactor: tinyflow 2025-09-03 19:19:50 +08:00
xingyu4j
78d005f7e1 refactor: tinyflow 2025-09-03 19:14:10 +08:00
xingyu4j
e802a39aa3 fix: import @vben/utils 2025-09-03 19:12:52 +08:00
xingyu4j
7f3e2a90ae fix: captcha aes encrypt 2025-09-03 18:04:35 +08:00
xingyu4j
1b4335760b fix: tinymce 2025-09-03 18:03:45 +08:00
xingyu4j
50a3e6daba fix: 引入错误 2025-09-03 18:03:14 +08:00
xingyu4j
f0f094a28d chore: fix missing dependencies 2025-09-03 17:10:12 +08:00
xingyu4j
046c8820ac fix: 循环依赖 2025-09-03 16:59:45 +08:00
xingyu4j
a238f635be fix: types 2025-09-03 16:58:31 +08:00
xingyu4j
deb412662e refactor: 提取正则和验证到 @vben/utils 2025-09-03 16:46:22 +08:00
xingyu4j
44eebda749 fix: code format 2025-09-03 16:35:00 +08:00
xingyu4j
e6f76c097d refactor: 破坏性重构,将枚举类由 utils 提取到 @vben/utils 2025-09-03 16:08:40 +08:00
xingyu4j
25468bece5 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-09-03 14:58:59 +08:00
YunaiV
18a63913d1 review:【ai 支付】相关代码 2025-09-03 09:18:44 +08:00
YunaiV
18de49e2fe review:【crm 支付】相关代码 2025-09-02 23:37:24 +08:00
YunaiV
40566f8e4a review:【pay 支付】相关代码 2025-09-02 23:29:53 +08:00
YunaiV
41583c5e41 review:【erp 系统】相关代码 2025-09-02 23:16:28 +08:00
YunaiV
744eef46f4 review:【member 会员】相关代码 2025-09-02 21:22:03 +08:00
YunaiV
5e85efb23e review:【mall 商城】promotion 相关代码 2025-09-02 20:59:21 +08:00
YunaiV
bb97aca0be review:【mall 商城】trade 相关代码 2025-09-02 20:29:01 +08:00
YunaiV
d0457b4e4b review:【mall 商城】product 相关代码 2025-09-02 19:41:18 +08:00
谦元吉
6a85b3ab84 fix(@vben/common-ui): resolve #6698 (#6700)
* fix(@vben/common-ui): resolve #6698

* fix(@vben/common-ui): resolve #6698

* fix(@vben/common-ui): resolve conversation

* fix(@vben/common-ui): resolve #6698
2025-09-02 17:02:11 +08:00
谦元吉
c57592f3a6 fix(@vben-core/shadcn-ui): 修复VbenPinInput组件在点击获取验证码和回车同时进行时会重复触发计时器的问题 (#6705) 2025-09-02 16:56:46 +08:00
YunaiV
160846b665 fix: download query bug 2025-09-02 09:42:21 +08:00
YunaiV
c25ea731fd reactor:优化批量删除的代码,从 as number 变成 ! 2025-09-02 09:28:19 +08:00
YunaiV
67da079606 review:同步 vue5 官方的差异 2025-09-01 23:29:44 +08:00
YunaiV
4062bb03fb review:同步 vue5 官方的差异 2025-09-01 22:24:15 +08:00
xingyu
0f0ae5de48 !208 fix: download query bug
Merge pull request !208 from puhui999/dev
2025-09-01 02:29:58 +00:00
puhui999
71d2c380b3 fix: download query bug 2025-08-31 21:17:11 +08:00
YunaiV
06ea290306 (〃'▽'〃) v2025.09 发布:新增 AI 支持联网搜索、推理、文件/图片、MCP 等功能,完善 IoT 场景联动 2025-08-31 11:38:45 +08:00
xingyu
8e4f52c8aa !207 fix: bugs
Merge pull request !207 from xingyu/dev
2025-08-26 09:14:39 +00:00
xingyu4j
433d12ed35 fix: bugs 2025-08-26 17:13:27 +08:00
xingyu4j
f317508d39 fix: build bugs 2025-08-26 17:07:27 +08:00
xingyu4j
b55c291af1 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-08-26 16:57:32 +08:00
jason
9301962e12 fix: 去掉 console 打印 2025-08-26 08:50:24 +00:00
jason
367a5b9924 fix: [BPM 工作流] 流程表单字段解析调整为使用库解析 2025-08-26 08:50:24 +00:00
XuZhiqiang
bc2b71baa3 !205 feat(@vben/web-antd): erp 模块除去收款单和付款单功能基本完成
* fix(@vben/web-antd): erp 解决冲突
* fix(@vben/web-antd): erp 更新采购和销售退货表单,修复关联订单选择功能不统一详细可编辑的问题,统一文件名称格式
* feat(@vben/web-antd): erp-finance-account 新增结算账户管理功能,包括表单、列表及相关操作
* feat(@vben/web-antd): erp-sale-return 新增销售退货管理功能,包括退货列表、表单及相关操作
* feat(@vben/web-antd): erp-sale-out 新增销售出库管理功能,包括出库列表、表单及相关操作
* feat(@vben/web-antd): erp-sale-order 新增销售订单管理功能,包括订单列表、表单及相关操作
* feat(@vben/web-antd): erp-sale-customer 新增客户管理功能,包括客户表单、列表及相关操作
* feat(@vben/web-antd): erp-purchase-return 新增采购退货管理功能,包括表单、列表及相关操作
* feat(@vben/web-antd): erp-purchase-in 新增采购入库管理功能,包括表单、列表及相关操作
* feat(@vben/web-antd): erp-stock-check 新增库存盘点单管理功能,包括表单、列表及相关操作
* feat(@vben/web-antd): erp-stock-move 新增库存调拨单管理功能,包括表单、列表及相关操作
* feat(@vben/web-antd): erp-stock-out 新增其它出库单管理功能,包括表单、列表及相关操作
* fix(@vben/web-antd): erp-stock-in 修复提交表单时清空产品项 ID,确保请求成功不报row_xxx报错
2025-08-26 08:40:01 +00:00
Ken Hai
b0d7b177be fix: 角色管理,授权的树形组件,取消勾选叶子节点,父级节点状态错误 (#6680)
Co-authored-by: haiyinlong <haiyinlong@uhigame.com>
2025-08-25 21:32:01 +08:00
LinaBell
566d3bdf7c fix: appendToMain warning (#6684) 2025-08-25 21:25:29 +08:00
螃蟹
adbf793e79 fix(@vben/web-ele): the main color tone for switching between dark and light themes has been reset (#6678) 2025-08-25 11:03:54 +08:00
jason
e43bb989b3 fix: 去掉 console 打印 2025-08-25 10:17:19 +08:00
jason
51471e2344 Merge remote-tracking branch 'yudao/dev' into dev 2025-08-25 09:45:03 +08:00
jason
4f65156a95 fix: [BPM 工作流] 流程表单字段解析调整为使用库解析 2025-08-25 09:42:18 +08:00
LinaBell
cf6c4c9aae fix: cannot read properties of null (reading 'nextSibling') (#6667) 2025-08-21 22:26:10 +08:00
Ken Hai
ffaf85c8f3 fix: 修复角色修改时VbenTree组件没有回显选中 (#6662)
* fix: 修复角色修改时VbenTree组件没有回显选中

* chore: use nextTick

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix: merge

* chore: 更新

---------

Co-authored-by: haiyinlong <haiyinlong@uhigame.com>
Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-21 15:30:58 +08:00
panda7
2cc78f925f fix: the bug in the lock method of the vbenModal component (#6648) 2025-08-21 15:17:55 +08:00
ming4762
93f0eea4e7 fix: fix the issue of excessive line spacing in vbenForm (#6653)
* gap-2和 pb-4/2 重叠导致间距过宽,gap-x只保留列间距
2025-08-21 12:41:04 +08:00
lighua
fddfc6d494 fix: 增加对不支持的 HTTP 方法的错误处理 2025-08-21 11:13:02 +08:00
xingyu
4af5931e92 !203 增加表单就绪状态,让表单数据先于form-create渲染,解决发起流程时表单事件不触发问题
Merge pull request !203 from 崔什么/master
2025-08-21 02:10:28 +00:00
yu.cui
80e0d05f4e 增加表单就绪状态,让表单数据先于form-create渲染,解决发起流程时表单事件不触发问题 2025-08-20 17:39:01 +08:00
YunaiV
8e372fa7da feat:【system 系统管理】租户管理时,支持填写多个域名 websites 2025-08-19 23:00:50 +08:00
YunaiV
3b2b0d5438 feat:【system 系统管理】租户管理时,支持填写多个域名 websites 2025-08-19 22:59:07 +08:00
xingyu
fb8179fef2 !202 docs: update deps
Merge pull request !202 from xingyu/dev
2025-08-19 09:47:11 +00:00
xingyu4j
ebac48524d docs: update deps 2025-08-19 17:46:25 +08:00
xingyu
807451bf2a !201 update vben 5.5.9
Merge pull request !201 from xingyu/dev
2025-08-19 09:45:44 +00:00
xingyu4j
8fdbbfad22 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-08-19 17:41:16 +08:00
xingyu4j
1d5bfaac5a Merge branch 'master' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-08-19 17:34:00 +08:00
xingyu
f5d9d7596a !200 fix: 修改Api日志界面打开后关不掉的问题
Merge pull request !200 from 痴货/master
2025-08-19 09:28:21 +00:00
谦元吉
58e3941810 chore(docs): update the component import of the form adapter description in the document (#6656) 2025-08-19 16:48:10 +08:00
Svend
3ad433a50b fix: 修复在 hash 路由模式下无法在新窗口打开路由的问题 (#6652)
此问题是由于 PR #6583 中新增的 `resolveHref` 函数导致的。其在 hash 路由模式下,得到的 URL 会包含 #/ 前缀。在经过 openRouteInNewWindow 的逻辑后就会出现两次 /# 前缀
2025-08-19 16:47:45 +08:00
ming4762
8ac2db5b7c fix: fix the issue of VbenForm compact reactive failure (#6654) 2025-08-19 16:46:14 +08:00
Elm1992
a441dcebae fix: meta.link invalid issue 2025-08-19 16:40:16 +08:00
吃货
b546ea8720 refactor(infra): 调整 API 错误日志页面组件导入顺序
- 将 Textarea 组件的导入顺序提前- 优化组件导入的组织结构
2025-08-19 11:01:33 +08:00
吃货
90895db1e7 fix: 修改Api日志界面打开后关不掉的问题
BUG连接:https://gitee.com/yudaocode/yudao-ui-admin-vben/issues/ICT6PI
2025-08-19 10:56:37 +08:00
YunaiV
2dfa34d096 feat:【infra 基础设施】文件配置时,增加“公开访问” 2025-08-18 00:00:04 +08:00
Vben
ff4704d5ea chore: Upgrade vite to version 7.x (#6645) 2025-08-16 22:50:31 +08:00
菠萝吹雪
6ddfbd84b0 chore: modify the contributor showcase in the README (#6636) 2025-08-16 22:47:08 +08:00
ming4762
1e6417f95b feat: vBenForm add layout: inline (#6644) 2025-08-16 22:41:08 +08:00
vben
e147a9d2fd chore: release 5.5.9 2025-08-16 22:16:02 +08:00
XuZhiqiang
cb1b441f7b !199 feat(@vben/web-antd): erp-stock-out 新增其它出库单管理功能,包括表单、列表及相关操作
* feat(@vben/web-antd): erp-stock-out 新增其它出库单管理功能,包括表单、列表及相关操作
* fix(@vben/web-antd): erp-stock-in 修复提交表单时清空产品项 ID,确保请求成功不报row_xxx报错
2025-08-16 13:14:38 +00:00
芋道源码
43c8ce2d7d !194 refactor: (web-ele)优化移动端组件代码结构
Merge pull request !194 from 痴货/master
2025-08-16 13:12:10 +00:00
YunaiV
271546a98b feat:【framework 框架】增加 api 加解密能力(默认登录先不加密,避免大家不理解) 2025-08-16 17:20:59 +08:00
YunaiV
4be6d26375 feat:【framework 框架】增加 api 加解密能力(优化代码) 2025-08-16 17:20:45 +08:00
YunaiV
2920dabb99 feat:【framework 框架】增加 api 加解密能力 2025-08-16 17:09:08 +08:00
xingyu
5b50a91529 !198 feat(@vben/web-antd): erp-product 新增产品管理功能,包括表单、列表及相关操作
Merge pull request !198 from XuZhiqiang/feat-erp
2025-08-15 10:47:54 +00:00
xingyu
f0e09f78e8 !195 feat:Tinyflow因大小写导致的引用问题
Merge pull request !195 from Codingendless/master
2025-08-15 10:46:38 +00:00
xuzhiqiang
133f90f34e fix(@vben/web-antd): erp-purchase-order修复新增采购订单时的报错,清除项的 ID 2025-08-15 09:40:34 +08:00
谦元吉
4efebb8c0b fix:update (#6635) 2025-08-14 22:01:12 +08:00
gxc685
9ce0df88ae fix: 修复mock里面eventHandler重复导致无法启动 (#6631) 2025-08-14 22:00:54 +08:00
xuzhiqiang
5076e3ff72 feat(@vben/web-antd): erp-product 新增产品管理功能,包括表单、列表及相关操作 2025-08-14 16:17:05 +08:00
xuzhiqiang
7fb9f6e064 feat(@vben/web-antd): erp-product-unit 新增产品单位管理功能,包括表单、列表及相关操作 2025-08-14 16:16:34 +08:00
xuzhiqiang
2a655a04c9 fix(@vben/web-antd): erp-product-category移除erp产品分类未使用的复选框处理逻辑,简化代码 2025-08-14 14:56:39 +08:00
xuzhiqiang
5eaeab0cff feat(@vben/web-antd): 新增产品分类表单和列表功能,优化产品分类接口 2025-08-14 14:33:42 +08:00
谦元吉
3cf0c0eb04 fix(@vben/backend-mock): go back to the last modification (#6634)
* fix(@vben/backend-mock): the version went back to the last submission, and the latest submission was completely useless.

* fix: resolve conflicts
2025-08-14 12:06:41 +08:00
Codingendless
0c371a78dc feat:Tinyflow因大小写导致的引用问题 2025-08-14 00:02:39 +08:00
谦元吉
ab7e363279 fix(@vben/backend-mock): fix all ts type errors in this module (#6613)
* fix(@vben/backend-mock): 修复所有 ts 类型报错

* fix(@vben/backend-mock): 修复该模块所有 ts 类型报错

* fix(@vben/backend-mock): 解决 coderabbitai

* fix(@vben/backend-mock): 解决 coderabbitai

* fix(@vben/backend-mock): 解决 coderabbitai
2025-08-12 17:23:39 +08:00
吃货
218f28f35c refactor: (web-ele)优化移动端组件代码结构
-调整组件内元素的排列顺序
- 修复部分组件的样式问题
- 优化代码结构,提高可维护性
2025-08-10 21:18:00 +08:00
吃货
b8c66b23f9 refactor: (ele,diy-editor)重构组件库结构和功能
- 新增 ComponentContainer、ComponentContainerProperty、ComponentLibrary 组件
- 优化导航栏单元格属性组件,更名为 CellProperty
- 更新优惠券相关组件导出方式
- 删除旧版 ComponentContainer 组件
2025-08-10 21:17:03 +08:00
吃货
d7397f28a0 Merge branch 'masterApiTreeSelect' 2025-08-10 16:42:57 +08:00
芋道源码
9cac5a2937 !193 修复批量删除后 checkedIds 未重置的问题
Merge pull request !193 from puhui999/dev
2025-08-09 07:15:42 +00:00
puhui999
8eae74879b fix(@vben/web-ele): 修复批量删除后 checkedIds 未重置的问题 2025-08-09 12:14:19 +08:00
puhui999
ccf9c3fd53 fix(@vben/web-antd): 修复批量删除后 checkedIds 未重置的问题 2025-08-09 12:10:10 +08:00
lighua
df655015b1 fix: 优化文件下载器方法 2025-08-08 15:31:31 +08:00
xingyu
6c425b4dbc !192 feat: BUG[Bug]: ele 版本 ApiTreeSelect 无法选择非末级 https://gitee.com/yudaoco…
Merge pull request !192 from 痴货/masterApiTreeSelect
2025-08-08 05:49:03 +00:00
xueyang
9fc594434f perf: 优化useVbenForm样式 (#6611)
* perf(style): 优化useVbenForm垂直布局 actions 样式

* perf(style): 优化useVbenForm actions 布局样式

- 操作按钮组显示位置
```
actionPosition?: 'center' | 'left' | 'right';
```
- 操作按钮组的样式
```
actionType?: 'block' | 'inline'
inline: 行类显示,block: 新一行单独显示
```

* perf: 优化useVbenForm actions 布局样式

删除 actionType
增加 actionLayout
- actionLayout?: 'inline' | 'newLine' | 'rowEnd';
- newLine: 在新行显示。rowEnd: 在行内显示,靠右对齐(默认)。inline: 使用grid默认样式
- 删除无用代码 queryFormStyle

* perf: 优化useVbenForm使用案例

* perf: 优化form组件样式

去掉padding,改为gap

* docs: update vben-form.md

* fix: 修复FormMessage位置

* perf: Avoid direct mutation of props object.

-  props.actionLayout = props.actionLayout || 'rowEnd';
-  props.actionPosition = props.actionPosition || 'right';
+  const actionLayout = props.actionLayout || 'rowEnd';
+  const actionPosition = props.actionPosition || 'right';

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix: 修复 wrapperClass 权重

* fix: 全局搜索结果不匹配 #6603

* fix: 避免FormMessage溢出

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-07 23:48:34 +08:00
吃货
63ce6f5669 feat: BUG[Bug]: ele 版本 ApiTreeSelect 无法选择非末级 https://gitee.com/yudaocode/yudao-ui-admin-vben/issues/ICGUVV
在菜单数据配置中添加 checkStrictly 属性,设置为 true,可以选择任何节点数据。
2025-08-07 21:10:39 +08:00
xingyu4j
9ef75f4fbe fix: JsonViewer 2025-08-06 15:36:02 +08:00
xingyu
ce1f3735ad !191 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !191 from Jason/dev
2025-08-06 03:30:54 +00:00
jason
07d15f5c88 Merge remote-tracking branch 'yudao/dev' into dev 2025-08-05 23:01:03 +08:00
jason
849f2becd8 feat: [BPM 工作流] Simple 模型新增跳过表达式 2025-08-05 22:58:11 +08:00
YunaiV
d48b78a462 feat:【system 系统功能】邮箱增加抄送、密送,支持多个 2025-08-05 22:23:29 +08:00
jason
8e4ea3ca44 fix: [BPM 工作流] 更多设置表单选项问题修复 2025-08-05 22:11:21 +08:00
YunaiV
55061b73de feat:【system 系统功能】邮箱增加抄送、密送,支持多个 2025-08-05 21:45:23 +08:00
lrl
73bddd119e style: (web-ele)优化多个组件的样式和布局
-调整图像上传组件的样式,优化上传区域和处理按钮的布局
- 改进魔方编辑器组件的样式,统一边框和对齐方式
-统一垂直按钮组组件的样式,修复按钮圆角问题
2025-08-05 15:34:25 +08:00
lrl
e7fc44715b feat: (web-ele)新增颜色输入框组件并优化图片上传组件
- 新增 ColorInput 组件用于颜色选择
- 重构 ImageUpload 组件,增加编辑和删除功能
- 更新 DIY 编辑器相关组件,优化用户体验
- 添加商城 H5 预览地址配置
- 优化导航栏单元格属性配置
2025-08-05 15:32:12 +08:00
YunaiV
6d99bf3a46 review:【erp 系统】purchase/order 的管理 2025-08-04 22:42:59 +08:00
xingyu
02f1bd3251 !190 fix: 优化角色菜单表单加载逻辑,移除重复的菜单列表加载调用,确保在打开模态框时正确加载菜单数据。
Merge pull request !190 from xingyu/dev
2025-08-04 11:23:08 +00:00
xingyu4j
9a305e6cbd fix: 优化角色菜单表单加载逻辑,移除重复的菜单列表加载调用,确保在打开模态框时正确加载菜单数据。 2025-08-04 19:12:51 +08:00
xingyu4j
990ae4463a fix: types 2025-08-04 18:43:33 +08:00
xingyu
3f1c3a283f !189 !188 feat(@vben/web-antd): vxe-table) 其他入库模块、简单验证样式
Merge pull request !189 from xingyu/dev
2025-08-04 10:30:33 +00:00
xingyu
229a6f017a !187 update apps/web-ele/src/views/system/user/data.ts.
Merge pull request !187 from 青木/N/A
2025-08-04 09:58:23 +00:00
xingyu
93290bf441 !188 feat(@vben/web-antd): vxe-table) 其他入库模块、简单验证样式
Merge pull request !188 from 陈賝/dev
2025-08-04 09:57:54 +00:00
nehc
c64be886b4 feat(@vben/web-antd): vxe-table)新增表单验证功能
- 在 vxe-table.ts 中添加 createRequiredValidation函数
- 在 data.ts 中使用 createRequiredValidation 替代原有的 className 函数
- 在 vxe-table 插件中添加 validation 相关的工具函数
- 优化表格列的验证逻辑,提高代码复用性和可维护性
2025-08-04 09:22:51 +08:00
nehc
5f56b14733 feat(@vben/web-antd): 验证样式
- 添加 isValidating 状态管理,用于控制验证过程
- 在表格列定义中增加验证错误样式
- 实现必填字段错误提示功能
- 优化表格渲染逻辑,确保验证错误及时显示
- 新增相关 CSS 样式,定义验证错误的视觉效果
2025-08-04 09:22:51 +08:00
nehc
9d80b9fc71 feat(@vben/web-antd): erp-stock-in 优化入库单产品清单组件 2025-08-04 09:22:51 +08:00
nehc
1433a0980d feat(@vben/web-antd): erp-stock-in 优化入库单产品清单组件
- 移除了 totalCount 和 totalPrice 的计算逻辑
- 调整了添加产品的按钮位置
- 为表格底部的单元格添加了自定义样式
- 简化了组件的 props 接口
2025-08-04 09:22:51 +08:00
nehc
3afd957713 feat(@vben/web-antd): erp-stock-in 优化库存入库模块
- 为表格列设置 minWidth 以优化布局
- 使用 Popconfirm组件替代 Modal 确认框
- 通过 message 组件展示操作结果
- 优化删除和审核操作的处理流程
- 引入 useVbenModal 优化表单弹窗
2025-08-04 09:22:51 +08:00
nehc
510ec12582 feat(@vben/web-antd): erp-stock-in 添加其它入库单功能
- 新增其它入库单列表页面
- 实现其它入库单的创建、编辑和删除功能
- 添加产品清单管理功能
- 集成供应商、产品和仓库的选择接口
- 优化表格展示和搜索功能
2025-08-04 09:22:51 +08:00
nehc
2e6575f368 feat(@vben/web-antd): erp-stock-record 添加产品库存明细管理功能
- 实现了产品库存明细的查询、导出功能
- 添加了搜索表单和列表展示
- 集成了仓库和产品选择器
- 使用了 VxeTable 组件
2025-08-04 09:22:51 +08:00
nehc
8d660404dc feat(@vben/web-antd): erp-stock-stock 实现产品库存管理功能
- 新增产品库存管理页面,包括库存列表和搜索功能
- 添加导出库存数据功能
- 集成 API 接口和数据处理逻辑
- 优化页面布局和组件使用
2025-08-04 09:22:50 +08:00
lrl
1f155fa7c5 feat: (web-ele)创建 DIY编辑器组件
- 新增 DIY 编辑器组件主入口文件
- 创建移动端组件索引文件
2025-08-04 09:11:58 +08:00
lrl
2166ce3e4e feat: 新增多个组件并优化优惠券相关功能
- 新增 AppLinkSelectDialog 组件,用于选择 APP 链接- 新增 NavigationBarCellProperty组件,用于导航栏单元格属性设置
- 新增 CombinationShowcase 和 CombinationTableSelect 组件,用于拼团活动展示和选择- 优化优惠券相关组件,导出所有优惠券相关组件
- 新增 ComponentContainer 组件,用于包裹和样式化 DIY 组件
2025-08-04 09:09:39 +08:00
青木
ec14751aeb update apps/web-ele/src/views/system/user/data.ts.
对应ele的 vxe-table的activeValue: 1,inactiveValue: 0

Signed-off-by: 青木 <720227+9mgps@user.noreply.gitee.com>
2025-08-03 13:28:05 +00:00
芋道源码
aa6639a108 !185 refactor: (web-ele)优化多个组件的删除操作和确认逻辑
Merge pull request !185 from 痴货/master
2025-08-03 12:12:53 +00:00
YunaiV
32ee1b11ec feat:【bpm 工作流】审批人自选时,相同节点共享数据 2025-08-02 22:25:30 +08:00
YunaiV
2c687266b2 feat:【BPM 工作流】增加审批人撤销的能力 2025-08-02 16:25:06 +08:00
lrl
38daaa2934 refactor: (web-ele)优化多个组件的删除操作和确认逻辑
- 将 ElMessageBox 替换为自定义 confirm 函数- 添加全局 loading 功能
- 优化错误处理和消息提示- 调整部分组件属性和样式
2025-08-01 13:56:55 +08:00
xingyu
5a31e80c2d !184 feat(@vben/web-antd): erp-stock-warehouse 仓库列表管理
Merge pull request !184 from 陈賝/dev
2025-07-31 07:04:35 +00:00
xingyu
ff62e4c368 !183 feat(@vben/web-antd): erp-purchase-supplier-优化采购订单导出功能并添加供应商管理权限控制
Merge pull request !183 from 陈賝/dev
2025-07-31 02:47:33 +00:00
nehc
8d17d8d915 feat(@vben/web-antd): erp-stock-warehouse 修复仓库列表的状态切换功能
- 将默认状态切换逻辑从组件模板移到单独的函数中
- 使用 confirm 对话框替代 message.confirm
- 优化了默认状态切换的用户体验和错误处理
- 引入了 Promise 机制,允许异步操作
2025-07-30 17:42:50 +08:00
nehc
787f5168ad feat(@vben/web-antd): erp-stock-warehouse 新增仓库管理功能
- 添加仓库管理相关的数据结构和 API 接口
- 实现仓库列表展示、搜索、添加、编辑和删除功能
- 添加仓库默认状态切换和导出功能
- 优化表格展示效果,固定操作列
- 移除不必要的按钮和链接
2025-07-30 16:48:52 +08:00
nehc
423bfffbea feat(@vben/web-antd): erp-purchase-supplier-优化采购订单导出功能并添加供应商管理权限控制
- 在供应商管理页面添加权限控制:
  - 创建供应商
  - 导出供应商信息
  - 编辑供应商
  - 删除供应商
2025-07-30 15:40:34 +08:00
nehc
33cec7caee feat(@vben/web-antd): erp-purchase-supplier-供应商管理页面
- 移除状态字段,增加联系电话字段
- 调整供应商列表的展示逻辑
- 优化搜索和导出功能
- 使用 useVbenVxeGrid 替代原有的表格实现
- 用 downloadFileFromBlobPart 处理文件下载
2025-07-30 15:40:33 +08:00
nehc
93c0d9e486 feat(@vben/web-antd): erp-purchase-supplier-添加供应商管理功能
- 新增供应商管理页面,包括搜索、列表、新增、编辑和删除功能
- 实现供应商数据的分页查询、导出功能
- 使用 Vben Form 和 Vxe Table 组件构建表单和表格
- 添加国际化支持
2025-07-30 15:40:33 +08:00
xingyu4j
8b89a32813 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-07-29 15:21:32 +08:00
leo
b93e22c45a fix(@vben/layouts): respect base URL when opening route in new window (#6583)
Previously, the generated URL for opening routes in a new window did not include the router base,
which led to incorrect paths when the app was deployed under a subdirectory (e.g., /admin/).
This change ensures that the resolved path includes the configured base by using
router.resolve(path).href.
2025-07-29 13:46:05 +08:00
xingyu
0694eb2b29 !181 feat(@vben/web-antd): erp-优化采购订单功能
Merge pull request !181 from 陈賝/dev
2025-07-28 10:04:42 +00:00
Jin Mao
193f5b6512 Merge branch 'main' into 2025072604 2025-07-28 15:53:04 +08:00
Jin Mao
cb3f96683f fix: 修复双列布局模式下,路由为hideInMenu时,空白右列 2025-07-28 15:50:21 +08:00
nehc
b3942bb8ff feat(@vben/web-antd): erp-移除重复接口
-移除了 stock API 中的 getStockCountByProductId 函数
-将 getStockCount 函数的使用范围从 product 模块扩展到 purchase 模块
- 更新了 PurchaseOrderItemForm 组件中的库存查询逻辑
2025-07-28 14:45:47 +08:00
nehc
b3a2d29a3b feat(@vben/web-antd): erp-优化采购订单功能
- 移除采购订单明细项表单配置
- 调整采购订单表格列定义
- 优化采购订单删除操作,增加加载提示和错误处理
- 添加采购订单详情页面
- 重新计算采购订单项的价格字段
- 调整采购订单状态更新和删除的交互方式,增加二次确认
2025-07-28 14:04:00 +08:00
nehc
f242f1c37d feat(@vben/web-antd): erp-优化上传附件及验证
- 修改订单时间格式为 timestamp
- 限制文件上传数量为 1
- 调整表格列宽和显示逻辑
- 优化子表单验证和提交逻辑
- 修复文件上传组件的兼容性问题
- 优化产品清单的初始化和验证
2025-07-26 17:36:59 +08:00
zhongming4762
06ffdf164a feat: add dingding login 2025-07-25 22:02:55 +08:00
ming4762
5b75e5e917 perf: perf the control logic of VbenModal full screen and header (#6566)
* resolve the issue of header=false and full screen button display but not operable
2025-07-25 21:45:45 +08:00
aonoa
fad0b49841 fix: adding roles does not automatically refresh (#6548)
* fix: adding roles does not automatically refresh

* style: fix code style err
2025-07-25 21:35:57 +08:00
Jin Mao
260e45cd7b Merge branch 'main' into feat/add-vben-modal-animation 2025-07-25 21:33:11 +08:00
nehc
8a7239ce24 feat(@vben/web-antd): erp-采购订单表单逻辑
- 使用 handleValuesChange
- 优化 discountPrice 和 totalPrice 的计算逻辑
- 改进子表单的验证和数据处理
- 统一数值格式化处理
- 优化表格数据的更新方式
2025-07-25 19:21:33 +08:00
nehc
e319888240 feat(@vben/web-antd): erp-优化采购订单表单布局和功能
- 添加订单单号字段并设置为只读
- 将附件上传组件替换为 FileUpload
- 新增产品清单字段
- 调整表单项的布局和样式
- 优化订单产品清单的展示方式
2025-07-25 19:21:32 +08:00
nehc
83010b6590 style(@vben/web-antd): erp-优化采购订单表单样式
- 更新 Tab 卡片样式,使用 border 和 bg-card 类
- 修改合计行样式,使用 rounded、border、bg-muted 和 text-muted-foreground 类
- 调整字体颜色,使用 text-foreground 类
2025-07-25 19:21:32 +08:00
nehc
a24f08cbb0 feat(@vben/web-antd): erp-采购订单明细表
- 使用 useVbenVxeGrid 重构
2025-07-25 19:21:31 +08:00
nehc
f9407ca8bc feat(@vben/web-antd): erp-采购订单明细表
- 优化了产品变更、价格计算和表单验证逻辑
- 更新了表格列定义和单元格模板
- 删除了冗余的组件挂载逻辑
2025-07-25 19:21:31 +08:00
nehc
7c2c249e5d feat(@vben/web-antd): erp-重构采购订单模块
- 更新表单组件,使用已有的 VbenForm 组件
- 优化表单字段定义,使用 useFormSchema 函数统一管理
- 重构表格组件,使用 VxeTable
- 优化数据处理逻辑,提高代码复用性和可维护性
- 调整界面布局和样式,提升用户体验
2025-07-25 19:21:31 +08:00
nehc
1cad71f3bf feat(@vben/web-antd): erp-区分采购对象
- 修改命名空间 PurchaseOrderApi 为 ErpPurchaseOrderApi
- 为接口属性添加注释,明确其含义和单位
- 更新相关视图和组件中的导入和使用
2025-07-25 19:21:31 +08:00
nehc
0b47648650 feat(@vben/web-antd): erp-添加采购订单功能
- 新增采购订单列表页面
- 添加采购订单表单和子表单组件
- 实现采购订单的查询、创建、编辑和删除功能
- 优化采购订单的审批和反审批操作- 增加采购订单的导出功能
2025-07-25 19:21:30 +08:00
YunaiV
f14954f7e2 fix:【BPM 工作流】流程预测时,“查看子流程”按钮不支持点击 2025-07-25 06:13:35 +00:00
nehc
7526ff5b87 refactor(@vben/web-antd): 移除 CardTitle 组件
移除了 CardTitle 组件及相关样式,直接使用 <span> 标签展示标题。
受影响的主要文件:
- 删除了 card-title.vue 文件
- 更新了 SummaryCard 组件的标题展示方式
- 修改了 TimeSummaryChart组件,用 <span> 替代 CardTitle 组件
2025-07-25 06:13:35 +00:00
nehc
b41ac68e06 refactor(@vben/web-antd): ERP 首页适配已有组件
- 移除不必要的 API 调用和数据处理逻辑
- 使用 AnalysisOverview 组件替换自定义统计卡片
- 优化 TimeSummaryChart组件,支持不同类型的数据展示
- 简化页面结构,提高组件的可复用性和可维护性
2025-07-25 06:13:35 +00:00
nehc
dcffb9bbe3 feat(@vben/web-antd): 新增 CardTitle组件并优化 TimeSummaryChart
- 新增 CardTitle 组件用于统一卡片标题样式
- 在 TimeSummaryChart 中使用 CardTitle 组件替代原生标题
- 调整 EchartsUI 组件的 height 属性单位
2025-07-25 06:13:35 +00:00
nehc
f763ad2855 feat(@vben/web-antd): 新增 ERP API 接口并符合 Vben 项目标准
- 将所有 ERP API 文件从旧的 axios 配置迁移到新的 requestClient
- 使用 namespace 组织接口类型定义,提高代码可维护性
- 将对象方法改为独立的导出函数,符合现代 JavaScript 最佳实践
- 为所有 API 函数添加完整的 TypeScript 类型定义
- 统一分页查询参数和状态更新参数的接口定义
- 涵盖财务、采购、销售、库存等所有 ERP 业务模块
2025-07-25 06:13:35 +00:00
YunaiV
7b7402b986 review:【BPM 工作流】模型分类内,排序不正确的问题 2025-07-25 06:13:35 +00:00
YunaiV
7b06bd27b3 fix:【BPM 工作流】工作流模型维护时,key 缺少参数校验 2025-07-25 06:13:35 +00:00
YunaiV
e6f4cf5660 review:【ANTD】相关的代码 2025-07-25 06:13:35 +00:00
xingyu
c447145d62 !180 refactor: 重构authLogin代码逻辑
Merge pull request !180 from 痴货/master
2025-07-23 07:41:44 +00:00
芋道源码
27ad777c2c !179 fix: 删除china2相关的地图json
Merge pull request !179 from 痴货/master
2025-07-23 05:08:38 +00:00
lrl
347f0ab852 refactor: 重构authLogin代码逻辑 2025-07-23 11:23:00 +08:00
lrl
df3215fef1 fix: 删除china2相关的地图json 2025-07-23 11:07:19 +08:00
lrl
992f0bd2f0 refactor: 重构商场首页和统计页面组件
- 新等组件
- 优化 Work增 AnalysisOverview、AnalysisOverviewIconbenchQuickDataShow 组件的使用
- 更新图标使用方式,移除自定义 SVG 图标
-提升页面视觉效果 调整布局和样式,
2025-07-23 10:51:13 +08:00
xingyu
4797791935 !177 fix: (system): 修复VbenTree加载顺序问题
Merge pull request !177 from 简佳/master
2025-07-21 10:34:08 +00:00
7031dbebe6 fix: (system): 修复VbenTree加载顺序问题
- 调整了数据权限分配和菜单分配表单中的加载顺序
- 确保在设置表单值之前完成树形结构数据的加载
2025-07-21 14:27:34 +08:00
vben
1575619d53 chore: release v5.5.8 2025-07-19 22:19:50 +08:00
xingyu
b031b6ac0f !176 fix: bugs
Merge pull request !176 from xingyu/dev
2025-07-19 09:25:51 +00:00
xingyu4j
cc3bf7e8a3 fix: action绑定 2025-07-19 17:22:50 +08:00
xingyu4j
cf27fd8ce9 fix: fix vxeTable commit proxy 2025-07-19 17:15:39 +08:00
xingyu4j
ff5c806de2 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-07-19 16:52:36 +08:00
Jin Mao
d5a36a167d fix: fix vxeTable commit proxy (#6536)
* fix: 修正use-vxe-grid中的代理配置提交类型

* chore: change config
2025-07-19 16:07:15 +08:00
xingyu4j
879de80857 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-07-19 12:24:22 +08:00
lrl
27a7e84def feat: 添加交易状况组件并优化统计数据展示,支持环比增长率显示 2025-07-18 15:06:27 +08:00
panda7
fc9ea347ca Merge branch 'main' into feat/add-vben-modal-animation 2025-07-18 00:38:54 +08:00
 panda7
1a9b0509d5 feat: add animation effects to VbenModal component 2025-07-18 00:15:40 +08:00
lrl
a442eab9ea feat: 更新组件类型和统计数据展示
- 在组件类型中新增 'ApiCascader' 以支持更多业务需求
- 在商品统计概览中为多个统计项添加 tooltip,提供更清晰的数据解释
- 优化交易统计页面,重构数据加载逻辑,提升用户体验
2025-07-17 10:35:33 +08:00
lrl
d2a2227c4c Merge remote-tracking branch 'remote/master'
# Conflicts:
#	packages/effects/plugins/src/echarts/use-echarts.ts
2025-07-17 10:09:54 +08:00
lrl
2cccbc949f fix: 修正商品统计数据赋值逻辑
- 更新商品统计组件中的数据赋值方式,确保正确映射到统计卡片
- 修复了浏览量、访客数、支付件数等多个统计项的数据来源,提升数据准确性
2025-07-17 09:55:11 +08:00
lrl
4620ede9b9 feat: 新增商品统计组件和优化数据处理逻辑
- 引入商品排行和商品概况组件,展示商品相关统计信息
- 更新商品统计 API,支持时间范围查询和数据格式化
- 优化数据加载逻辑,提升用户体验
- 添加日期范围选择器,增强统计数据的灵活性
2025-07-17 09:53:04 +08:00
panda7
07b64ad384 feat: add function support for formItemClass prop (#6511)
* feat: add function support for formItemClass prop

* feat: add try-catch to formItemClass function

* fix: formItemClass function ts error

---------

Co-authored-by: sqchen <chenshiqi@sshlx.com>
2025-07-17 09:37:39 +08:00
Jin Mao
1bc5d2986b chore: update-vxe-table (#6516)
* chore: update vxe-pc-ui,vxe-table

* fix(ui): 修复代理配置初始化方法名错误

* fix(ui): 修改远程表格刷新配置

* chroe: update vxeTable

更新到最新
2025-07-16 19:15:39 +08:00
lrl
73a73ac312 fix: 修复性别统计图表数据赋值逻辑
- 修正了性别统计卡片组件中性别统计数据的赋值方式
- 确保数据正确映射到图表选项中,提升数据展示的准确性
2025-07-16 16:15:26 +08:00
lrl
b480eb54c1 feat: 新增会员统计组件和优化数据展示
- 在会员统计页面中新增会员地域分布和性别分布组件
- 更新会员统计 API,支持获取会员汇总和地区统计数据
- 优化数据加载逻辑,提升用户体验
- 引入分析概览组件以展示关键统计信息
2025-07-16 16:14:01 +08:00
lrl
380a24358c style: 更新会员漏斗卡片组件的样式
- 为 trapezoid 类添加 z-index 属性,确保层级关系正确
- 保持 margin-left 设置不变,优化了组件的视觉效果
2025-07-16 11:52:04 +08:00
lrl
ff53153782 style: 优化会员漏斗卡片组件的样式和布局
- 调整了会员漏斗卡片组件的样式,简化了宽度设置
- 更新了 trapezoid 类的样式,移除了多余的 margin 和 font-size 设置
- 改善了组件的可读性和视觉效果
2025-07-16 11:49:27 +08:00
xingyu
93829a109c !174 refactor: 重构authLogin代码逻辑
Merge pull request !174 from dhb52/dev
2025-07-16 03:43:15 +00:00
lrl
8c2f982ab6 feat: 更新日期格式化方法,新增多个统计卡片组件
- 将日期格式化方法从 formatDate 更新为 formatDate2,提升日期处理的灵活性
- 新增会员概览、用户统计、会员终端和交易量趋势等统计卡片组件
- 在商城首页引入新组件以展示关键会员和交易数据
- 优化数据获取逻辑,提升用户体验
2025-07-16 11:01:27 +08:00
dhb52
e9abbdcc68 refactor: 重构authLogin代码逻辑 2025-07-15 23:24:36 +08:00
lrl
5edccd3efe feat: 新增运营数据展示组件,优化商城首页数据处理逻辑
- 在商城首页引入 WorkbenchQuickDataShow 组件,展示关键运营数据
- 增加数据获取方法,包括订单、商品和钱包充值数据
- 更新 AnalysisOverview 组件以支持双向绑定
- 优化数据加载逻辑,提升用户体验
2025-07-15 15:49:48 +08:00
lrl
e88c17f7e2 style: 格式化样式 2025-07-15 13:25:44 +08:00
lrl
6ce1363dea feat: 更新组件和API,优化数据处理逻辑
- 将 TreeSelect 组件的 fieldNames 属性更改为 props
- 更新商品分类API的请求路径
- 在多个模块中引入 ElMessageBox 以增强用户交互体验
- 新增售后管理和订单管理的详细视图组件
- 优化了多个表单组件的逻辑,提升了用户体验
2025-07-15 13:23:20 +08:00
HamWong
bb36cca315 fix: 锁定屏幕页面样式自适应 (#6480) 2025-07-15 09:08:08 +08:00
xingyu
66fde8c148 !173 feat: 添加 fen 转 yuan 金额格式化方法
Merge pull request !173 from 痴货/master
2025-07-14 05:58:16 +00:00
lrl
067df741b4 feat: 添加 fen 转 yuan 金额格式化方法
- 在 vxe-table 格式化方法中添加 formatFenToYuanAmount
- 该方法将 fen 单位的金额转换为 yuan 单位,并进行格式化
- 在多个模块中将 formatAmount2 替换为 formatFenToYuanAmount
2025-07-14 13:24:26 +08:00
xingyu
0b2ae9503e !172 !170 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !172 from xingyu/dev
2025-07-14 03:27:17 +00:00
xingyu
cedefa5d16 !171 refactor(web-ele): 移除未使用的工具函数
Merge pull request !171 from 痴货/master
2025-07-13 11:04:29 +00:00
xingyu
2150369d0d !170 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !170 from Jason/dev
2025-07-13 11:03:20 +00:00
吃货
8f8f3481ff refactor(web-ele): 移除未使用的工具函数
- 删除了 utils/index.ts 中未使用的树处理和类型判断函数
- 更新了相关文件中的导入路径
- 优化了代码结构,提高了代码的可读性和维护性
2025-07-13 09:08:12 +08:00
jason
f697dfb266 Merge remote-tracking branch 'yudao/dev' into dev 2025-07-11 21:52:45 +08:00
jason
6ff2c0d772 fix: [BPM 工作流] bug 修复 2025-07-11 21:51:08 +08:00
jason
65206b413c fix: [BPM 工作流] bug 修复 2025-07-10 14:05:44 +08:00
xingyu4j
61a874f700 perf: 尝试优化table action 2025-07-09 17:48:49 +08:00
xingyu4j
bfd3a209f8 fix: deprecated 2025-07-09 17:18:07 +08:00
xingyu4j
26549ccfb8 fix: todo 2025-07-09 17:14:32 +08:00
xingyu4j
4cffb9e674 fix: type 2025-07-09 17:14:10 +08:00
xingyu4j
379e8e755f perf: 将 getUrlValue 放入 vben/utils 下 2025-07-09 17:11:22 +08:00
xingyu4j
4eeaa32b2c fix: type 2025-07-09 17:05:15 +08:00
xingyu
40694f3818 !169 fix: 修复用户没有岗位,个人中心初始内容不显示
Merge pull request !169 from icaiwei/dev
2025-07-09 08:55:32 +00:00
icaiwei
67b27f77c8 fix: 修复用户没有岗位,个人中心初始内容不显示 2025-07-09 16:30:20 +08:00
xingyu
4d491fbc6b !168 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !168 from Jason/dev
2025-07-09 07:09:08 +00:00
jason
e1b639640d Merge remote-tracking branch 'yudao/dev' into dev 2025-07-09 08:57:03 +08:00
jason
8000c02473 fix: [BPM 工作流] 问题修复 2025-07-09 08:54:10 +08:00
jason
f3b83990ad fix: formCreate 组件用户选择器,用户选中问题 2025-07-08 17:54:06 +08:00
xingyu4j
783344c95a chore: update deps 2025-07-08 14:29:38 +08:00
xingyu4j
a950b7b6e7 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-07-08 14:25:47 +08:00
Jin Mao
b8bf482c6a Merge branch 'main' into form 2025-07-07 09:16:54 +08:00
吃货
2464bf8e8f feat: 更新商品详情和表单组件,优化数据获取逻辑,移除未使用的格式化函数 2025-07-07 08:24:09 +08:00
Jin Mao
3b673ca915 Merge branch 'main' into feature/scroll_to_the_error_field 2025-07-07 08:21:50 +08:00
Jin Mao
bbf0287511 chore: fix lint warning (#6487) 2025-07-07 08:21:25 +08:00
吃货
3326c25a0d feat: 删除不再使用的格式化数字工具函数,优化 SKU 列表组件的逻辑和结构 2025-07-07 07:38:43 +08:00
吃货
4fafb39efc feat: 新增商品属性管理组件,包含属性列表和属性值的增删功能 2025-07-07 07:25:38 +08:00
吃货
f0516fa857 feat: 新增商品管理模块,包含商品分类、品牌、SPU管理及相关表单组件 2025-07-06 21:27:44 +08:00
panda7
d4786f3f75 Merge branch 'main' into feature/scroll_to_the_error_field 2025-07-06 21:19:52 +08:00
xue-jn
b333fd676d docs: update vben-drawer.md (#6478)
* docs: update vben-drawer.md

* docs: update vben-drawer.md

---------

Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2025-07-06 20:26:06 +08:00
吃货
4cc5d8bf92 feat: 新增商城模块,新增会员中心的会员详情的订单管理,售后管理,收藏记录,优惠券,推广用户的展示 2025-07-06 08:49:22 +08:00
YunaiV
6a537bb202 feat:【ANTD】优化 doc-alert 缺少 margin 间距 2025-07-05 18:30:04 +08:00
YunaiV
d0a76e1394 feat:【ANTD】优化 help 样式 2025-07-05 18:16:41 +08:00
xingyu
23639676bc !165 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !165 from Jason/dev
2025-07-05 07:26:52 +00:00
xingyu
c0af547bc3 !166 fix: 修正代理目标地址并优化组件导入顺序
Merge pull request !166 from 痴货/master
2025-07-05 05:23:11 +00:00
吃货
280e79c55f fix: 修正代理目标地址并优化组件导入顺序 2025-07-05 07:52:29 +08:00
吃货
59cf72ab9c feat: 新增会员管理模块,包括用户、等级、标签、签到配置等功能 2025-07-05 07:50:55 +08:00
吃货
361ae581ae refactor: 优化代码格式,调整导入顺序和内容对齐 2025-07-05 07:11:54 +08:00
吃货
95f2d1c9bb feat: 新增支付管理其他模块 2025-07-05 07:10:58 +08:00
吃货
4562d204e0 feat: 新增 支付管理 - 应用信息模块 2025-07-05 00:55:24 +08:00
sqchen
f1051c8773 feat: add scrollToFirstError to the form component 2025-07-05 00:50:53 +08:00
吃货
e0080bb3e0 feat: 新增api接口文件 2025-07-05 00:41:50 +08:00
sqchen
243f3a201d feat: add scrollToFirstError to the form component 2025-07-05 00:19:12 +08:00
jason
2568b4dcda Merge remote-tracking branch 'yudao/dev' into dev 2025-07-04 20:41:31 +08:00
jason
0dc0f72508 fix: [BPM 工作流] bug 修复 2025-07-04 20:36:37 +08:00
jason
23a503d84b fix: [BPM 工作流] bug 修复 2025-07-04 19:52:34 +08:00
陈蔚然
2f7de243f6 Merge branch 'vbenjs:main' into slider-translate-captcha 2025-07-04 10:28:40 +08:00
chenweiran
1aafb43103 feat: 增加基于图片拼图切片平移的验证码 2025-07-04 10:26:02 +08:00
chenweiran
8ccd01ade5 feat: 增加基于图片拼图切片平移的验证码 2025-07-04 10:23:47 +08:00
Netfan
e6bfbce6cb revert: page height fixed,revert #6422 2025-07-03 22:29:48 +08:00
someone-cool
1f63aed64c fix(@vben/common-ui): add page footer's height to calc contentstyle (#6422) 2025-07-03 18:36:42 +08:00
xue-jn
253b0da7d2 fix: 接口返回子节点为空数组时,还会显示折叠箭头 (#6463) 2025-07-03 18:35:03 +08:00
RanMaoting
33a4d524db feat(@vben/plugins): 新增VxeGrid组件插槽类型定义 (#6452)
* feat(@vben/plugins): 新增VxeGrid组件插槽类型定义

Closes: #6451

* fix(@vben/plugins): 优化vxe-table组件的插槽类型定义

修复Omit导致的类型丢失
2025-07-03 18:34:37 +08:00
chenweiran
bbd8a53d9d feat: 增加基于图片拼图切片平移的验证码 2025-07-03 18:20:20 +08:00
chenweiran
8554924cb9 feat: 增加基于图片拼图切片平移的验证码 2025-07-03 17:43:19 +08:00
RanMaoting
fee811d950 fix: 优化组件方法透传并新增表单弹窗示例 (#6443) 2025-07-02 19:58:48 +08:00
Netfan
78076e70b4 chore: update deps 2025-07-02 16:55:55 +08:00
jason
7fca077296 feat: [BPM 工作流] 完善子流程节点 2025-07-01 18:14:13 +08:00
xingyu
a86c9e49ab !162 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !162 from Jason/dev
2025-06-30 02:07:46 +00:00
jason
33d6e33308 Merge remote-tracking branch 'yudao/dev' into dev 2025-06-29 23:14:27 +08:00
jason
9cea95a9d0 feat: [BPM 工作流] 子流程节点配置 2025-06-29 23:09:06 +08:00
jason
a9306450b5 feat: [BPM 工作流] 增加子流程节点 2025-06-29 06:58:17 +08:00
chewenye
b78bc65ce7 feat: 组件json-viewer支持bigint数据显示 cwy (#6377)
Co-authored-by: 车文烨 <chewy@china-lehua.com>
2025-06-29 04:32:30 +08:00
xingyu4j
77c16cd8e2 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-06-28 12:04:15 +08:00
xingyu
8b477131a2 !161 fix: table action
Merge pull request !161 from xingyu/dev
2025-06-28 03:24:24 +00:00
xingyu4j
6646232a60 perf: style 2025-06-28 00:24:52 +08:00
xingyu4j
35d1492868 feat: remove ts-ignore 2025-06-28 00:22:16 +08:00
xingyu4j
81db965ffd fix: bugs 2025-06-28 00:16:15 +08:00
xingyu
e2ea0f312e !160 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !160 from Jason/dev
2025-06-27 16:09:31 +00:00
xingyu4j
0e5ef6e546 fix: 金额显示 2025-06-28 00:07:55 +08:00
xingyu4j
20922aec14 perf: crm receivable plan 2025-06-27 23:49:09 +08:00
jason
249b43ab09 Merge remote-tracking branch 'yudao/dev' into dev 2025-06-27 23:20:20 +08:00
jason
c4930bc52c fix: TODO 修改 2025-06-27 23:18:42 +08:00
xingyu4j
74d95b8db4 fix: table action 2025-06-27 23:14:17 +08:00
xingyu4j
d0210be4cd fix: bugs 2025-06-27 22:39:03 +08:00
xingyu
a30f915714 !159 fix: ai chat dark
Merge pull request !159 from xingyu/dev
2025-06-27 14:14:46 +00:00
Utopia
b1fb623113 feat: 为 auth layout 添加 slot: logo, 提升组件的灵活性和可复用性 (#6442) 2025-06-27 19:23:24 +08:00
Stephen Chang
de14908fd3 fix(icon-picker): 解决icon-picker组件切换分页后,关键词检索失效问题 (#6437)
当icon-picker组件切换分页后,在输入关键词检索,但是分页没有重置,导致检索结果异常
2025-06-27 19:21:23 +08:00
Li Kui
5c3972196a fix: Add $t import to login expired modal (#6429)
closes #6230
2025-06-27 19:20:25 +08:00
CG.gatspy
3230781538 feat: [vben-tree]增加数据disabled (#6343)
* feat: [vben-tree]增加数据disabled

* Update packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-06-27 19:09:30 +08:00
broBinChen
e7fd0e3b6a feat(hooks): useHoverToggle的入参refElement支持传入响应式数组 (#6333)
* feat(hooks): useHoverToggle的入参refElement支持传入响应式数组

* feat(hooks): 1、增加 useHoverToggle 中 refElement 参数关于传入响应式数组的注释说明。 2、修改 watch 监听深度,仅需浅层监听 refs 变化。 3、使用 effectScope 管理 useElementHover 实例,避免 refs 变化时事件监听器累积导致的内存泄漏问题

* feat(hooks): 在useHoverToggle中增强 updateHovers  的边界处理,优化watch方案,只监听元素数量变化而不是整个数组变化,避免过度依赖收集

---------

Co-authored-by: xiaobin <xiaobin_chen@fzzixun.com>
2025-06-27 19:08:41 +08:00
xingyu4j
0fbff4997f fix: ai chat dark 2025-06-27 15:17:39 +08:00
jason
374335a3c1 fix: [BPM 工作流] TODO 修改 2025-06-26 20:38:46 +08:00
xingyu4j
87bbc346dc feat: ai style 2025-06-26 19:02:59 +08:00
xingyu4j
da8943c840 feat: ai chat style 2025-06-26 18:37:58 +08:00
xingyu4j
3dc4f42545 feat: ai chat style 2025-06-26 18:34:10 +08:00
xingyu4j
6299128a1e fix: customer detail button 2025-06-26 18:21:07 +08:00
xingyu4j
07f87dfe22 fix: customer 2025-06-26 18:10:47 +08:00
xingyu4j
201f052fab fix: bugs 2025-06-26 17:57:18 +08:00
xingyu
127e5ad9b6 !158 fix: bugs
Merge pull request !158 from xingyu/dev
2025-06-26 09:46:57 +00:00
xingyu4j
ec9b364b33 fix: locales 2025-06-26 17:45:23 +08:00
xingyu4j
9b7b40c596 feat: 字段调整统一 minWidth 2025-06-26 17:32:03 +08:00
xingyu4j
a9a2c3ff67 feat: useDescription 2025-06-26 17:31:39 +08:00
xingyu4j
dcd5f463a6 fix: crm bugs 2025-06-26 15:46:07 +08:00
xingyu4j
69ae45ee6d fix: danger 2025-06-26 15:39:36 +08:00
xingyu4j
eb960dd38e feat: 优化显示 2025-06-26 15:16:11 +08:00
xingyu4j
e95805899a fix: delete user 2025-06-26 14:32:49 +08:00
xingyu4j
ab4e467b45 feat: 去除所有接口中的 vo 2025-06-25 18:51:13 +08:00
xingyu4j
c59ebbecfd feat: 去除所有接口中的 vo 2025-06-25 18:48:16 +08:00
xingyu4j
2855eb4e08 fix: bugs 2025-06-25 18:22:06 +08:00
xingyu4j
d94dbe73e1 fix: crm business status 2025-06-25 18:02:29 +08:00
xingyu4j
b183f0b9e1 fix: crm business status 2025-06-25 17:15:10 +08:00
xingyu4j
510d91cb66 fix: crm plan 2025-06-25 15:43:15 +08:00
xingyu4j
3527b12b84 feat: 增加最小宽度,使fixed生效 2025-06-25 15:29:53 +08:00
xingyu4j
709501937d feat: 优化显示 2025-06-25 15:21:48 +08:00
xingyu4j
faa303526d feat: crm business status 2025-06-25 15:17:37 +08:00
yuhengshen
2f7d1f009d fix: 全屏状态下弹窗圆角优化 (#6413) 2025-06-24 23:41:54 +08:00
xingyu
d189af253e !157 fix: bugs
Merge pull request !157 from xingyu/dev
2025-06-24 13:33:50 +00:00
xingyu4j
53e049241a fix: bugs 2025-06-24 21:32:42 +08:00
xingyu4j
d258af35d7 fix: pageNo error 2025-06-24 21:28:14 +08:00
xingyu
d870868923 !156 feat: 优化 system
Merge pull request !156 from xingyu/dev
2025-06-24 12:07:35 +00:00
xingyu4j
34730ab1a0 feat: 优化 system 2025-06-24 17:35:43 +08:00
xingyu4j
9821f134fc fix: style 2025-06-24 17:06:07 +08:00
yuhengshen
946f91f387 feat: optimize modal dragging range(#6414)
* 当弹窗指定了容器时,拖拽将被限制在容器范围内
2025-06-24 17:05:59 +08:00
xingyu4j
fe6fcdaf67 feat: 优化 doc-alert 2025-06-24 16:23:15 +08:00
xingyu
f911b0f65c !155 CRM finish
Merge pull request !155 from xingyu/dev
2025-06-24 07:40:36 +00:00
xingyu4j
0b830d634f feat: 优化页面 2025-06-24 15:37:42 +08:00
xingyu4j
6a4d0063ff feat: add cellTag 2025-06-24 15:36:22 +08:00
xingyu4j
9a3a9eec09 fix: type error 2025-06-24 14:10:47 +08:00
xingyu4j
f758097ac9 fix: pay 2025-06-24 14:05:38 +08:00
xingyu4j
4cad0e6523 feat: crm statistics portrait 2025-06-24 12:52:05 +08:00
xingyu4j
3f304cdb76 feat: echarts add china geo 2025-06-24 12:51:38 +08:00
xingyu4j
51bd200ad8 feat: crm statistics rank 2025-06-24 10:28:27 +08:00
xingyu4j
83ddc05cf5 feat: crm statistics funnel 2025-06-24 10:09:16 +08:00
xingyu4j
5f6956b43b fix: crm statistics customer 2025-06-24 09:49:14 +08:00
xingyu4j
62655e23e5 feat: crm statistics performance 2025-06-23 21:14:48 +08:00
xingyu4j
b2310b226c feat: crm statistics customer 2025-06-22 19:43:31 +08:00
xingyu4j
f5f28380db fix: help style 2025-06-22 16:22:44 +08:00
xingyu4j
24f2f5958d fix: tenant style 2025-06-22 16:22:16 +08:00
xingyu4j
37c5e41bcf fix: field 2025-06-22 14:08:25 +08:00
xingyu4j
3a740b5abd Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-06-22 14:06:08 +08:00
YunaiV
1c8c3c956c review:【ANTD】相关的代码 2025-06-22 11:14:58 +08:00
xingyu
b42135ecd3 !154 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !154 from Jason/dev
2025-06-21 14:48:57 +00:00
jason
6138a610ee Merge remote-tracking branch 'yudao/dev' into dev 2025-06-21 22:08:32 +08:00
jason
ae95eb3367 feat: [BPM 工作流] Simple 浏览模式弹窗显示审批记录 2025-06-21 22:05:40 +08:00
xingyu4j
223c3e7a8a feat: crm summary 2025-06-21 19:45:31 +08:00
xingyu4j
f15be6eade feat: format time utils 2025-06-21 19:30:43 +08:00
xingyu
273577c6d3 !153 fix bugs
Merge pull request !153 from xingyu/dev
2025-06-21 09:11:36 +00:00
xingyu4j
2690ea82a6 style: dark 模式下的异常显示 2025-06-21 17:01:57 +08:00
jason
4cc6cc45b1 feat: [BPM 工作流] Simple 模型图浏览模式 2025-06-21 16:53:33 +08:00
xingyu4j
474cbc3019 fix: style 2025-06-21 16:49:52 +08:00
xingyu4j
da6553b543 fix: style 2025-06-21 16:47:12 +08:00
xingyu4j
a775d7baa4 feat: cron tab 2025-06-21 16:45:15 +08:00
xingyu4j
ff76f24db6 perf: table actions 2025-06-21 16:23:10 +08:00
xingyu4j
a063d8e81e fix: table actions 2025-06-21 16:21:48 +08:00
xingyu4j
c264945d8f feat: dict css class 2025-06-21 14:46:26 +08:00
xingyu4j
d2e4a26c84 feat: dict support cssClass 2025-06-21 14:39:50 +08:00
xingyu
3cddac89b3 !152 perf
Merge pull request !152 from xingyu/dev
2025-06-20 10:33:39 +00:00
xingyu4j
9283d58ce9 feat: 优化 dict 2025-06-20 18:32:05 +08:00
xingyu4j
7c3a2b7aa4 perf: 优化 table actions 性能 2025-06-20 18:19:09 +08:00
xingyu4j
4f5316aa32 feat: 使用 useDescription 2025-06-20 18:10:16 +08:00
xingyu4j
604539e22b feat: mall reward activity 2025-06-20 15:13:42 +08:00
xingyu4j
bd51a311e4 feat: mall point 2025-06-20 15:13:13 +08:00
xingyu4j
46527954d5 feat: mall diy 2025-06-20 14:53:18 +08:00
xingyu4j
6df938431e fix: ImageUpload config 2025-06-20 14:50:47 +08:00
xingyu4j
e2561593d9 feat: mall discountActivity 2025-06-20 14:10:57 +08:00
xingyu4j
065dde94e8 feat: mall combination 2025-06-20 14:03:10 +08:00
xingyu4j
e1d04d8a6a feat: mall bargain record 2025-06-20 11:17:42 +08:00
xingyu4j
8ff0f216a9 feat: mall bargain activity 2025-06-20 11:16:42 +08:00
xingyu4j
f4b03b6101 Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-06-20 10:24:12 +08:00
lghuahua
986eacae9a fix: improve request logic in api-component
* 修复某些情况下updateParam设置的参数可能不会提交给api的问题
* 修复在上一个请求尚未完成前如果params发生了变更,将不会再触发新的api请求
---------

Co-authored-by: Netfan <netfan@foxmail.com>
2025-06-20 08:42:45 +08:00
xingyu4j
33cab645f5 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-06-19 19:32:16 +08:00
xingyu4j
bcabc4d6d0 feat: mall brokerage withdraw 2025-06-19 19:29:53 +08:00
xingyu4j
f0d221ebf9 feat: mall brokerage user 2025-06-19 18:56:17 +08:00
xingyu
1a552ed618 !150 fix: 部门列表不显示
Merge pull request !150 from Frank.han/dept-fix
2025-06-19 09:41:11 +00:00
frank.han
81bd36a186 fix: 部门列表不显示 2025-06-19 16:10:45 +08:00
xingyu4j
1518ec2f67 feat: mall brokeage record 2025-06-19 15:51:11 +08:00
xingyu4j
df396f3441 feat: mall seckill activity 2025-06-19 15:47:28 +08:00
xingyu4j
a4f0a48bfe feat: mall coupon 2025-06-19 14:26:13 +08:00
jason
da308e80aa perf: [BPM 工作流] 流程取消 confirm 改成 prompt 组件 2025-06-19 09:34:41 +08:00
xingyu4j
61c086e02a feat: 使用tailwindcss 重构样式 2025-06-18 15:53:53 +08:00
xingyu4j
66d8690238 fix: 当图片404的时候不能初始化的问题 2025-06-18 15:16:46 +08:00
xingyu
84ae36aca9 !148 优化组件
Merge pull request !148 from xingyu/dev
2025-06-18 06:51:28 +00:00
xingyu4j
a311622334 docs: template 2025-06-18 14:50:40 +08:00
xingyu4j
f57eff9ad2 perf: 优化租户选择 2025-06-18 14:05:43 +08:00
xingyu4j
50558e3bde perf: help 2025-06-18 13:56:16 +08:00
xingyu4j
5b4846e93d perf: tenant-dropdown 2025-06-18 11:58:47 +08:00
xingyu4j
56b4751be1 fix: style 2025-06-18 09:27:12 +08:00
xingyu4j
39d9e394c3 fix: tenant dropdown style 2025-06-18 09:01:42 +08:00
xingyu
8f6fff6e83 !147 Merge ai
Merge pull request !147 from xingyu/dev
2025-06-17 12:30:09 +00:00
xingyu4j
a4f4c0d6f6 feat: style 2025-06-17 20:22:24 +08:00
Netfan
97b8e28a2b docs: fix delete request usage (#6389) 2025-06-17 08:52:59 +08:00
YunaiV
7276d0a909 reactor:统一导出的 url 都是 export-excel 2025-06-17 08:39:59 +08:00
芋道源码
fd65e03fe0 !146 新增 ele 批量删除
Merge pull request !146 from puhui999/dev-new
2025-06-17 00:37:03 +00:00
puhui999
7844a6f292 Merge remote-tracking branch 'yudao/dev' into dev-new 2025-06-16 22:01:02 +08:00
puhui999
01469e935f feat: 【ele】代码生成新增批量删除 2025-06-16 22:00:15 +08:00
puhui999
a0e4b52251 feat: 【ele】任务管理新增批量删除 2025-06-16 21:42:11 +08:00
puhui999
0be48ce623 feat: 【ele】文件管理新增批量删除 2025-06-16 21:39:04 +08:00
puhui999
58d36c9b49 feat: 【ele】数据源管理新增批量删除 2025-06-16 21:37:12 +08:00
puhui999
79011799dc feat: 【ele】配置管理新增批量删除 2025-06-16 21:35:43 +08:00
puhui999
c874f754b8 feat: 【ele】OAuth 2.0 新增批量删除 2025-06-16 21:31:20 +08:00
puhui999
c79b569a13 feat: 【ele】社交客户端管理新增批量删除 2025-06-16 21:30:11 +08:00
puhui999
d115c3d14a feat: 【ele】通知公告管理新增批量删除 2025-06-16 21:28:08 +08:00
puhui999
586c9e161c feat: 【ele】站内信管理新增批量删除 2025-06-16 21:26:38 +08:00
puhui999
d1b3a98b7c feat: 【ele】短信管理新增批量删除 2025-06-16 21:25:34 +08:00
puhui999
3bae7aa442 feat: 【ele】邮箱管理新增批量删除 2025-06-16 21:24:11 +08:00
puhui999
79c451d256 feat: 【ele】字典管理新增批量删除 2025-06-16 21:21:37 +08:00
puhui999
842404d5b9 feat: 【ele】岗位管理新增批量删除 2025-06-16 21:16:29 +08:00
puhui999
3d331d7fcc feat: 【ele】角色管理新增批量删除 2025-06-16 21:14:19 +08:00
puhui999
879cad366f feat: 【ele】用户管理新增批量删除 2025-06-16 21:13:01 +08:00
puhui999
995400a98f feat: 【ele】租户新增批量删除 2025-06-16 21:01:19 +08:00
xingyu4j
e219e8f868 feat: ai 2025-06-16 19:17:15 +08:00
xingyu4j
014785a1ad feat: ai 2025-06-16 16:59:04 +08:00
xingyu4j
d09b993bc8 feat: 将一些utils放到package/core/base/shared/src/utils 2025-06-16 14:46:59 +08:00
xingyu4j
3a46fa2c26 fix: docAlert import 2025-06-16 14:10:34 +08:00
xingyu4j
22dcc12447 chore: deps 2025-06-16 14:00:12 +08:00
xingyu4j
bc79a37522 chore: 还原 proxy config 2025-06-16 13:46:58 +08:00
xingyu
81e63c7204 !145 refactor(web-antd): 修正 Tinyflow 组件中的导入路径
Merge pull request !145 from gjd/dev_xx
2025-06-16 05:44:10 +00:00
gjd
31a98ba9f8 refactor(web-antd): 修正 Tinyflow 组件中的导入路径
- 将 './ui/typing' 修改为 './ui/typeing'(可能是原代码中的拼写错误)
- 将 './ui/typing' 修改为 './ui/index',以符合常见的模块入口文件结构
2025-06-16 13:16:07 +08:00
gjd
0f701dd49b Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev_xx 2025-06-16 09:58:35 +08:00
gjd
f285aa8a27 refactor(web-antd): 重构 Tinyflow 组件并优化类型定义
- 将 Item 类型和 Tinyflow 相关类型移动到 ui/typing 文件夹
- 删除 ui/index.d.ts 文件,减少冗余类型定义
- 优化 Tinyflow 组件代码,简化 imports
- 移除 formatTime.ts 中的冗余代码,使用 @vben/utils 中的 formatDate 函数
2025-06-16 09:47:32 +08:00
YunaiV
b7244bae01 reactor:统一导出的 url 都是 export-excel 2025-06-16 09:08:09 +08:00
芋道源码
c0e33d00d0 !144 feat: 【antd】新增批量删除操作
Merge pull request !144 from puhui999/dev-new
2025-06-16 01:06:02 +00:00
puhui999
0d411310fe fix: 【antd】修复添加批量删除时产生的副作用 2025-06-15 21:09:40 +08:00
xingyu4j
2885dc43bf feat: download 统一使用@vben/utils 2025-06-15 19:46:09 +08:00
xingyu4j
c9aac08ef9 fix: todo 2025-06-15 19:33:54 +08:00
xingyu4j
841ea4bf36 fix: type error 2025-06-15 19:22:52 +08:00
puhui999
2939c2e4f5 feat: 【antd】新增批量删除操作 2025-06-15 17:52:03 +08:00
YunaiV
52e04179e4 review:【ANTD】相关的代码 2025-06-15 17:24:41 +08:00
puhui999
0cc83967ed feat: 【antd】新增批量删除操作 2025-06-15 17:02:10 +08:00
YunaiV
797730ca01 review:【ANTD】相关的代码 2025-06-15 16:54:18 +08:00
xingyu
c374f011ca !143 完善bpm,商城进度35%
Merge pull request !143 from xingyu/dev
2025-06-15 08:43:16 +00:00
xingyu4j
a15d4e8dfe feat: 尽可能的用 lucide 替换 ep 图标 2025-06-15 15:53:12 +08:00
xingyu4j
93a02573d7 feat: 批量去除 vo 2025-06-15 15:33:18 +08:00
puhui999
34f41790c2 Merge branch 'dev' into dev-new
# Conflicts:
#	apps/web-antd/src/views/infra/codegen/index.vue
#	apps/web-antd/src/views/infra/job/index.vue
2025-06-15 15:25:20 +08:00
xingyu4j
96c4ee974a feat: 去除BpmFormApi中的vo 2025-06-15 15:20:22 +08:00
xingyu4j
3f6b422f77 feat: 去除BpmFormApi中的vo 2025-06-15 15:20:03 +08:00
puhui999
1054eec9d1 feat: 【antd】新增批量删除操作 2025-06-15 15:11:19 +08:00
xingyu
b11ccfad13 !142 feat: [BPM 工作流] 流程报表
Merge pull request !142 from Jason/dev
2025-06-15 04:09:05 +00:00
jason
e2a449351e feat: [BPM 工作流] 流程报表 2025-06-15 10:56:53 +08:00
jason
1dd0588a39 fix: code review 修改 2025-06-14 22:02:16 +08:00
xingyu4j
96ea1f98c0 fix: product 2025-06-14 20:35:34 +08:00
xingyu4j
0eb81bd332 fix: vxe Amount 2025-06-14 20:35:13 +08:00
xingyu4j
122b835fb7 feat: mall seckill config 2025-06-14 14:36:28 +08:00
xingyu4j
5fefb334af fix: cellRender CellImages 2025-06-14 14:36:16 +08:00
xingyu4j
382757b458 fix: type error 2025-06-14 13:49:43 +08:00
xingyu4j
fb4af81e3f feat: mall banner 2025-06-14 13:32:59 +08:00
xingyu4j
8691b17cc2 feat: mall article category 2025-06-14 13:27:46 +08:00
xingyu4j
59c6955b37 feat: bpm 当字段较少时,使用minWidth 2025-06-14 12:09:15 +08:00
xingyu
7f72a398b2 !141 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !141 from Jason/dev
2025-06-14 03:36:05 +00:00
jason
24a703a09d Merge remote-tracking branch 'yudao/dev' into dev 2025-06-13 22:03:31 +08:00
jason
5e88462b4e fix: [BPM 工作流] 流程模型列表排序问题修复 2025-06-13 22:02:06 +08:00
gjd
33b7a11a4e feat(ai): 新增 AI 绘图功能
- 添加 AI 绘图相关的 API 接口和路由
- 实现 AI 绘图页面,支持不同平台的绘图功能
- 添加绘图作品列表和重新生成功能
- 优化绘图页面样式和布局
2025-06-13 15:27:25 +08:00
gjd
4596cd9fa5 feat(ai): 添加 AI 聊天功能
- 新增 AI 聊天对话和消息相关 API
- 实现聊天界面,包括对话列表、消息列表、发送消息等功能
- 添加音乐生成功能的初始框架
2025-06-12 18:26:10 +08:00
xingyu
cac4efc227 !139 fix: type error
Merge pull request !139 from xingyu/dev
2025-06-12 09:55:43 +00:00
xingyu4j
0b4e0237e4 fix: type error 2025-06-12 16:49:21 +08:00
xingyu4j
8770c9f374 fix: utils 2025-06-12 16:48:33 +08:00
xingyu4j
c458a43f58 perf: table actions 2025-06-12 16:11:54 +08:00
xingyu4j
789f202e55 feat: dict tag supper hexColor 2025-06-12 09:59:24 +08:00
xingyu
c805449973 !138 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !138 from Jason/dev
2025-06-12 01:21:42 +00:00
jason
6f1ec3e0a3 fix: 修改 review 中的问题 2025-06-12 09:20:28 +08:00
jason
b6d2cc6c65 Merge remote-tracking branch 'yudao/dev' into dev 2025-06-11 21:09:37 +08:00
jason
070605ec6e perf: [BPM 工作流] Simple 模型节点名称修改优化 2025-06-11 21:07:50 +08:00
xingyu4j
fcce15c0b8 feat: formatNumber 移动到 @vben/utils 2025-06-11 20:15:27 +08:00
xingyu4j
21f2472561 fix: 金额显示问题 2025-06-11 18:12:24 +08:00
gjd
d2fbb5a18b feat(ai/knowledge): 新增知识库文档创建和编辑功能
- 新增知识库文档创建和编辑页面组件
- 实现知识库文档分段和处理功能
- 优化知识库文档列表展示
- 修复部分功能的权限控制问题
2025-06-11 18:09:04 +08:00
jason
23a25cb521 fix: [BPM 工作流] 节点名称输入框自动获取焦点问题修复 2025-06-11 18:08:48 +08:00
xingyu4j
355a2056f4 fix: 金额显示问题 && utils 引用路径 2025-06-11 18:07:25 +08:00
Netfan
c0962fec18 fix: auto close popup on deactivated (#6368)
* 修复挂载到内容区域的弹窗和抽屉被意外关闭的问题
2025-06-11 12:20:52 +08:00
xingyu4j
41f816483b fix: error 2025-06-11 09:23:29 +08:00
xingyu
3befa5f2cb !137 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !137 from Jason/dev
2025-06-11 01:22:07 +00:00
jason
6e3ffb61ef Merge remote-tracking branch 'yudao/dev' into dev 2025-06-10 22:37:54 +08:00
jason
f0585cebf7 feat: [BPM 工作流] - 流程模型历史 2025-06-10 22:35:38 +08:00
gjd
a4e44379e8 feat(ai): 添加 AI 写作、知识库、思维导图和工作流功能
- 新增 AI 写作功能,包括示例点击、重置和停止流等功能
- 实现 AI 知识库管理,支持创建、编辑和删除知识库
- 添加 AI 思维导图功能,支持预览和管理思维导图
- 实现 AI 工作流管理,支持创建、编辑和删除工作流
- 优化 API 调用,使用 Vben 组件库和 Vue 3 相关特性
2025-06-10 18:03:16 +08:00
xingyu4j
47c4931fe1 feat: 优化显示效果 2025-06-10 17:17:55 +08:00
jason
c23de92503 feat: [BPM 工作流] - 流程模型查看流程表单详情 2025-06-10 16:56:59 +08:00
xingyu
db3b1d7210 !136 feat: remove apps doc alert
Merge pull request !136 from xingyu/dev
2025-06-10 08:43:44 +00:00
xingyu4j
c54e0a5899 feat: remove apps doc alert 2025-06-10 16:33:09 +08:00
xingyu4j
f32eef482f refactor: use vben/common-ui docAlert 2025-06-10 16:32:29 +08:00
xingyu4j
057ea74e0e feat: add doc alert common ui 2025-06-10 16:21:40 +08:00
jason
981191de05 fix: [BPM 工作流] - 流程列表流程名称过长问题 2025-06-10 15:54:06 +08:00
xingyu4j
3b5c939a61 fix: bugs 2025-06-10 14:46:50 +08:00
xingyu4j
6ad994b621 feat: mall article 2025-06-09 21:29:31 +08:00
xingyu
a579fab449 !135 Merge remote-tracking branch 'yudao/dev' into dev
Merge pull request !135 from Jason/dev
2025-06-09 12:55:33 +00:00
gjd
54066859c5 feat(ai): 添加思维导图功能
- 在 ai/mindmap 页面添加 Right 组件
- 实现思维导图的初始化、渲染和下载功能
- 优化 markdown 内容的处理和展示
- 添加对思维导图库的依赖和类型定义
2025-06-09 18:31:21 +08:00
xingyu4j
ef29424641 feat: 核销 2025-06-09 18:20:55 +08:00
jason
a50a32cdca Merge remote-tracking branch 'yudao/dev' into dev 2025-06-09 17:50:54 +08:00
jason
b1114dea0c feat: [BPM 工作流] - 流程模型删除、清理等操作 2025-06-09 17:46:08 +08:00
xingyu4j
e2d1dacbf9 feat: mall pickUpOrder 2025-06-09 17:16:22 +08:00
jason
50fdab86b3 fix: 合并问题修复 2025-06-09 17:01:35 +08:00
gjd
1b236e89bf feat(ai): 添加 AI 绘图和思维导图功能
- 新增 AI 绘图管理页面,包括绘画列表、搜索筛选和操作功能
- 实现 AI 思维导图生成功能,支持流式生成和已有内容生成
- 添加 AI 音乐和写作相关的 API 接口
- 更新常量文件,增加 AI 平台、图像生成状态等枚举
- 优化 AI 绘图和思维导图的组件结构,提高可维护性
2025-06-09 16:20:34 +08:00
xingyu4j
c6a627c95b feat: add summaryCard comps 2025-06-09 14:11:07 +08:00
xingyu4j
4613732cd1 feat: 使用vben自带的spin指令 2025-06-09 13:55:25 +08:00
xingyu4j
84b51ed8bb feat: mall pick up store 2025-06-09 12:08:36 +08:00
xingyu4j
82a2674817 fix: user select 2025-06-09 11:45:32 +08:00
xingyu4j
ea31db17ad Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev 2025-06-09 10:19:25 +08:00
xingyu
e16d8308b9 !134 fix: [BPM 工作流] - 流程设计页面的步骤条问题
Merge pull request !134 from Jason/dev
2025-06-09 01:33:55 +00:00
jason
a2424e13d5 fix: [BPM 工作流] - 流程设计页面的步骤条问题 2025-06-09 09:02:13 +08:00
jason
0e9f2004bb fix: merge yudao/dev 解决冲突 2025-06-09 00:04:45 +08:00
jason
6abefe9c1e feat: [BPM 工作流] - 流程修改,发布等操作 2025-06-08 23:41:20 +08:00
xingyu4j
673f6a0487 feat: 测试没问题 2025-06-08 18:38:33 +08:00
xingyu4j
aa7df9236d feat: 使用小图标 2025-06-08 18:35:55 +08:00
xingyu4j
9365549b9a feat: AppModal AppFormModal 2025-06-08 18:23:14 +08:00
xingyu4j
a8f7b925ca feat: formatFraction ==> formatAmount2 2025-06-08 18:22:55 +08:00
XiaoHetitu
8ba7bdf2bd fix(button): 为按钮添加type属性防止表单提交意外触发表单验证机制 (#6340)
在按钮组件中,按钮元素缺少type="button"属性可能导致在表单中意外提交。添加此属性以确保按钮行为符合预期。

Co-authored-by: yuanwj <ywj6792341@qq.com>
2025-06-08 17:56:24 +08:00
zyy
b015fbc9fc fix: [adapter] 表格配置类型报错 (#6327)
配置toolbarConfig中的search时会有类型报错
2025-06-08 17:53:55 +08:00
broBinChen
b69320c070 feat(hooks): support separate enter/leave delays in useHoverToggle (#6325)
Co-authored-by: xiaobin <xiaobin_chen@fzzixun.com>
2025-06-08 17:53:29 +08:00
zhang
dcccc213ce fix: requestClient.upload会将vbenform中value为undefined的值转为字符串undefined’提… (#6300)
* fix: requestClient.upload会将vbenform中value为undefined的值转为字符串undefined’提交给后台保存

* fix: requestClient.upload会将vbenform中value为undefined的值转为字符串'undefined’提交给后台保存
2025-06-08 17:51:16 +08:00
ali-pay
c0e601c020 fix: menu type is not 'button' (#6277)
Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2025-06-08 17:50:44 +08:00
RanMaoting
017ed1a9e1 types: 为useVbenVxeGrid添加泛型声明,使grid实例上能正确获取到行数据的类型 (#5653)
Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2025-06-08 17:43:02 +08:00
xingyu4j
5fb652f2b3 feat: registerComponent 2025-06-08 17:42:44 +08:00
xingyu4j
fb9ce28276 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-06-08 17:26:43 +08:00
xingyu4j
55be102cf2 feat: mall 2025-06-08 17:26:01 +08:00
xingyu4j
17e862fde1 fix: api 2025-06-08 17:22:09 +08:00
xingyu4j
e71bbc0a1b feat: mall express template 2025-06-08 17:21:46 +08:00
xingyu4j
5d99264665 feat: mall express 2025-06-08 17:14:21 +08:00
xingyu4j
8eacb0dec6 feat: mall afterSale 2025-06-08 17:03:51 +08:00
xingyu4j
f86c41b669 feat: mall order 2025-06-08 16:38:21 +08:00
jason
d3be31eded fix: [BPM 工作流] - 流程新增页面优化,创建成功跳转问题修复 2025-06-08 09:51:34 +08:00
YunaiV
dc0eac918d review:【ANTD】【BPM 支付】xingyu pulls #118、#116 2025-06-07 20:42:58 +08:00
YunaiV
8a17e03e6e review:【ANTD】【BPM 工作流】jaosn pulls #114、#116 2025-06-07 20:25:27 +08:00
YunaiV
f6f2f65656 review:【ANTD】【BPM 工作流】ziye #https://gitee.com/yudaocode/yudao-ui-admin-vben/pulls/113 2025-06-07 20:17:21 +08:00
YunaiV
013f3f3d2d review:【ANTD】【Pay 支付】chihuo 关于支付应用、订单的提交 2025-06-07 19:53:14 +08:00
xingyu4j
acc65c3b06 Merge branch 'dev' of https://gitee.com/yudaocode/yudao-ui-admin-vben into dev 2025-06-07 17:09:53 +08:00
xingyu4j
eb6feb9b7e feat: trade config 2025-06-07 17:09:51 +08:00
xingyu4j
de157f725b fix: auth 2025-06-07 15:49:27 +08:00
xingyu4j
3c92f7daab fix: file config 2025-06-07 15:48:35 +08:00
xingyu
f8bcebb576 !133 新增 ele 代码生成示例
Merge pull request !133 from puhui999/dev
2025-06-07 07:03:01 +00:00
puhui999
413f3fae15 feat: 【ele】新增 general 主子表 erp 模式代码生成示例 2025-06-07 14:30:47 +08:00
puhui999
fe8c7b67f7 feat: 【ele】新增 general 主子表 normal 模式代码生成示例 2025-06-07 14:29:35 +08:00
puhui999
836d6ab3f3 feat: 【ele】新增 general 主子表 inner 模式代码生成示例 2025-06-07 14:27:48 +08:00
puhui999
d4e4caa50e feat: 【ele】新增 general 树表代码生成示例 2025-06-07 14:18:24 +08:00
puhui999
f6a9340c53 feat: 【ele】新增 general 单表代码生成示例 2025-06-07 14:16:59 +08:00
puhui999
316fc05c52 feat: 【ele】新增 general 单表代码生成示例 2025-06-07 14:16:05 +08:00
puhui999
d1aafb60d7 feat: 【ele】新增主子表 inner 代码生成示例 2025-06-07 13:05:13 +08:00
puhui999
7e2b062c3e feat: 【ele】新增主子表 erp 代码生成示例 2025-06-07 13:03:29 +08:00
puhui999
50ef308a8a feat: 【ele】新增主子表 normal 代码生成示例 2025-06-07 13:01:10 +08:00
xingyu4j
e3429f644b feat: spu expant 2025-06-07 12:55:04 +08:00
xingyu4j
c7013a030e feat: treeToString 2025-06-07 12:54:50 +08:00
puhui999
78c7e9aec2 fix: 【antd】代码生成器表单优化 2025-06-07 12:53:03 +08:00
puhui999
7dced16ca6 fix: 【ele】代码生成器表单优化 2025-06-07 12:50:57 +08:00
xingyu4j
759c6b975f feat: product list 2025-06-07 12:35:07 +08:00
puhui999
b28476d0c8 feat: 【ele】新增树表代码生成示例 2025-06-07 12:28:59 +08:00
puhui999
0ecdd684f7 feat: 【ele】新增单表代码生成示例 2025-06-07 12:23:15 +08:00
puhui999
e95c01d8cc fix: 【ele】user remove onActionClick 2025-06-07 12:08:21 +08:00
xingyu4j
1b3e2eef81 feat: mall comment 2025-06-07 11:53:32 +08:00
xingyu4j
9258716ba7 feat: vxe add CellImages renderer 2025-06-07 11:53:06 +08:00
puhui999
268a69c530 feat: 【ele】增加 TableAction 组件 2025-06-07 10:40:14 +08:00
puhui999
a026f88fde fix: 代码生成预览移除 v-dompurify-html 使用 v-html 2025-06-07 10:08:28 +08:00
xingyu4j
c35ef82788 feat: mall product property 2025-06-06 23:26:09 +08:00
xingyu4j
fff84e746f feat: mall product brand 2025-06-06 23:06:40 +08:00
xingyu4j
356b6cf5a3 feat: mall category 2025-06-06 22:53:17 +08:00
xingyu4j
09bc50dac0 feat: 高度统一 2025-06-06 22:50:34 +08:00
xingyu4j
1f598d7712 feat: mall api 添加mall统一前缀 2025-06-06 22:45:43 +08:00
xingyu4j
dbb9a33fda feat: mall api 2025-06-06 22:23:51 +08:00
xingyu4j
23aacea84c fix: root 2025-06-06 20:47:24 +08:00
xingyu4j
2c3dd668e3 refactor: bpm 2025-06-06 20:45:45 +08:00
xingyu4j
7e8f2a1328 refactor: modal select 2025-06-06 20:45:27 +08:00
xingyu4j
5e77558efd feat: vxe add formatPast2 2025-06-06 20:44:39 +08:00
xingyu
6a069f49cf !132 修复了一些代码生成 review 提到的问题
Merge pull request !132 from puhui999/dev
2025-06-06 09:26:43 +00:00
gjd
3ef362508a feat(ai): 添加 AI 对话聊天和 API 密钥管理功能
- 新增 AI 对话聊天管理页面,包括对话列表和消息列表
- 新增 API 密钥管理页面,包括密钥列表和表单
- 添加相关 API 接口和数据模型
- 集成表单和表格组件,实现基本的 CRUD 操作
2025-06-06 17:09:14 +08:00
puhui999
95e7ffafe0 fix: TableAction 批量删除 disabled 控制 2025-06-06 17:03:02 +08:00
puhui999
ffdccfb19b fix: TableAction 批量删除 disabled 控制 2025-06-06 16:12:11 +08:00
puhui999
2abe2e21bc fix: 代码生成批量删除相关 setCheckedIds -> handleRowCheckboxChange、deleteIds -> checkedIds 然后注释去掉 2025-06-06 16:03:13 +08:00
puhui999
2c9032e595 fix: 去除批量删除接口的 ByIds,这种按照约定,是不带的,针对 Id 的情况 2025-06-06 15:44:37 +08:00
zwtvip
f7bae8ac0f chore: export framework components for use in independent pages 2025-05-21 00:37:26 +08:00
6344 changed files with 673249 additions and 76253 deletions

View File

@@ -8,6 +8,27 @@ body:
value: |
感谢对项目的支持与关注。在提出问题之前,请确保你已查看相关开发或使用文档:
- https://doc.iocoder.cn/
- type: dropdown
id: version
attributes:
label: 分支
description: 你当前正在使用我们软件的哪个分支?
options:
- master (默认)
- dev (开发分支)
validations:
required: true
- type: dropdown
id: version
attributes:
label: 版本
description: 你当前正在使用我们软件的哪个版本?
options:
- antd-design-vue
- element-plus
- naiveui
validations:
required: true
- type: checkboxes
attributes:
label: 这个问题是否已经存在?
@@ -42,13 +63,3 @@ body:
description: 如果可以的话,上传任何关于 bug 的截图。
value: |
[在这里上传图片]
- type: dropdown
id: version
attributes:
label: 版本
description: 你当前正在使用我们软件的哪个版本/分支?
options:
- master (默认)
- dev (开发分支)
validations:
required: true

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

View File

Before

Width:  |  Height:  |  Size: 348 KiB

After

Width:  |  Height:  |  Size: 348 KiB

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 KiB

View File

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

Before

Width:  |  Height:  |  Size: 238 KiB

After

Width:  |  Height:  |  Size: 238 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

View File

Before

Width:  |  Height:  |  Size: 139 KiB

After

Width:  |  Height:  |  Size: 139 KiB

View File

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

View File

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

Before

Width:  |  Height:  |  Size: 201 KiB

After

Width:  |  Height:  |  Size: 201 KiB

View File

Before

Width:  |  Height:  |  Size: 60 KiB

After

Width:  |  Height:  |  Size: 60 KiB

View File

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 196 KiB

BIN
.gitee/image/wx-xingyu.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 KiB

View File

Before

Width:  |  Height:  |  Size: 177 KiB

After

Width:  |  Height:  |  Size: 177 KiB

View File

Before

Width:  |  Height:  |  Size: 126 KiB

After

Width:  |  Height:  |  Size: 126 KiB

View File

@@ -9,7 +9,7 @@ runs:
uses: pnpm/action-setup@v4
- name: Install Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: 'pnpm'

View File

@@ -1,89 +0,0 @@
## Git Commit Message Convention
> This is adapted from [Angular's commit convention](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular).
#### TL;DR:
Messages must be matched by the following regex:
```js
/^(revert: )?(feat|fix|docs|style|refactor|perf|test|workflow|build|ci|chore|types|wip): .{1,50}/;
```
#### Examples
Appears under "Features" header, `dev` subheader:
```
feat(dev): add 'comments' option
```
Appears under "Bug Fixes" header, `dev` subheader, with a link to issue #28:
```
fix(dev): fix dev error
close #28
```
Appears under "Performance Improvements" header, and under "Breaking Changes" with the breaking change explanation:
```
perf(build): remove 'foo' option
BREAKING CHANGE: The 'foo' option has been removed.
```
The following commit and commit `667ecc1` do not appear in the changelog if they are under the same release. If not, the revert commit appears under the "Reverts" header.
```
revert: feat(compiler): add 'comments' option
This reverts commit 667ecc1654a317a13331b17617d973392f415f02.
```
### Full Message Format
A commit message consists of a **header**, **body** and **footer**. The header has a **type**, **scope** and **subject**:
```
<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
```
The **header** is mandatory and the **scope** of the header is optional.
### Revert
If the commit reverts a previous commit, it should begin with `revert: `, followed by the header of the reverted commit. In the body, it should say: `This reverts commit <hash>.`, where the hash is the SHA of the commit being reverted.
### Type
If the prefix is `feat`, `fix` or `perf`, it will appear in the changelog. However, if there is any [BREAKING CHANGE](#footer), the commit will always appear in the changelog.
Other prefixes are up to your discretion. Suggested prefixes are `docs`, `chore`, `style`, `refactor`, and `test` for non-changelog related tasks.
### Scope
The scope could be anything specifying the place of the commit change. For example `dev`, `build`, `workflow`, `cli` etc...
### Subject
The subject contains a succinct description of the change:
- use the imperative, present tense: "change" not "changed" nor "changes"
- don't capitalize the first letter
- no dot (.) at the end
### Body
Just as in the **subject**, use the imperative, present tense: "change" not "changed" nor "changes". The body should include the motivation for the change and contrast this with previous behavior.
### Footer
The footer should contain any information about **Breaking Changes** and is also the place to reference GitHub issues that this commit **Closes**.
**Breaking Changes** should start with the word `BREAKING CHANGE:` with a space or two newlines. The rest of the commit message is then used for this.

View File

@@ -19,11 +19,9 @@ Project maintainers have the right and responsibility to remove, edit, or reject
- Checkout a topic branch from the relevant branch, e.g. main, and merge back against that branch.
- If adding a new feature:
- Provide a convincing reason to add this feature. Ideally, you should open a suggestion issue first and have it approved before working on it.
- If fixing bug:
- Provide a detailed description of the bug in the PR. Live demo preferred.
- It's OK to have multiple small commits as you work on the PR - GitHub can automatically squash them before merging.

View File

@@ -30,7 +30,7 @@ jobs:
- windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0

View File

@@ -25,7 +25,7 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0

View File

@@ -28,12 +28,12 @@ jobs:
timeout-minutes: 20
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v5
with:
run_install: false
@@ -67,7 +67,7 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
@@ -90,7 +90,7 @@ jobs:
- windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0

View File

@@ -57,7 +57,7 @@ jobs:
# your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL

View File

@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
@@ -30,7 +30,7 @@ jobs:
run: pnpm build:play
- name: Sync Playground files
uses: SamKirkland/FTP-Deploy-Action@v4.3.5
uses: SamKirkland/FTP-Deploy-Action@v4.3.6
with:
server: ${{ secrets.PRO_FTP_HOST }}
username: ${{ secrets.WEB_PLAYGROUND_FTP_ACCOUNT }}
@@ -43,7 +43,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
@@ -54,7 +54,7 @@ jobs:
run: pnpm build:docs
- name: Sync Docs files
uses: SamKirkland/FTP-Deploy-Action@v4.3.5
uses: SamKirkland/FTP-Deploy-Action@v4.3.6
with:
server: ${{ secrets.PRO_FTP_HOST }}
username: ${{ secrets.WEBSITE_FTP_ACCOUNT }}
@@ -67,7 +67,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
@@ -85,7 +85,7 @@ jobs:
run: pnpm run build:antd
- name: Sync files
uses: SamKirkland/FTP-Deploy-Action@v4.3.5
uses: SamKirkland/FTP-Deploy-Action@v4.3.6
with:
server: ${{ secrets.PRO_FTP_HOST }}
username: ${{ secrets.WEB_ANTD_FTP_ACCOUNT }}
@@ -98,7 +98,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
@@ -116,7 +116,7 @@ jobs:
run: pnpm run build:ele
- name: Sync files
uses: SamKirkland/FTP-Deploy-Action@v4.3.5
uses: SamKirkland/FTP-Deploy-Action@v4.3.6
with:
server: ${{ secrets.PRO_FTP_HOST }}
username: ${{ secrets.WEB_ELE_FTP_ACCOUNT }}
@@ -129,7 +129,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
@@ -147,7 +147,7 @@ jobs:
run: pnpm run build:naive
- name: Sync files
uses: SamKirkland/FTP-Deploy-Action@v4.3.5
uses: SamKirkland/FTP-Deploy-Action@v4.3.6
with:
server: ${{ secrets.PRO_FTP_HOST }}
username: ${{ secrets.WEB_NAIVE_FTP_ACCOUNT }}

View File

@@ -20,6 +20,6 @@ jobs:
if: github.repository == 'vbenjs/vue-vben-admin'
runs-on: ubuntu-latest
steps:
- uses: release-drafter/release-drafter@v6
- uses: release-drafter/release-drafter@v7
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -19,15 +19,15 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20]
node-version: [22]
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
# - name: Checkout code
# uses: actions/checkout@v4
# uses: actions/checkout@v6
# with:
# fetch-depth: 0
@@ -58,7 +58,7 @@ jobs:
echo "version=${version}" >> $GITHUB_OUTPUT
echo "major=${major}" >> $GITHUB_OUTPUT
- uses: release-drafter/release-drafter@v6
- uses: release-drafter/release-drafter@v7
with:
version: ${{ steps.version.outputs.version }}
publish: true

10
.gitignore vendored
View File

@@ -22,7 +22,7 @@ yarn.lock
package-lock.json
.VSCodeCounter
**/backend-mock/data
.omx
# local env files
.env.local
.env.*.local
@@ -49,3 +49,11 @@ vite.config.ts.*
*.sln
*.sw?
.history
.cursor
# AI
.agent
.agents
.claude
.codex
skills-lock.json

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -1 +1 @@
22.1.0
22.22.0

6
.npmrc
View File

@@ -1,8 +1,8 @@
registry = "https://registry.npmmirror.com"
registry=https://registry.npmmirror.com
public-hoist-pattern[]=lefthook
public-hoist-pattern[]=eslint
public-hoist-pattern[]=prettier
public-hoist-pattern[]=prettier-plugin-tailwindcss
public-hoist-pattern[]=oxfmt
public-hoist-pattern[]=oxlint
public-hoist-pattern[]=stylelint
public-hoist-pattern[]=*postcss*
public-hoist-pattern[]=@commitlint/*

View File

@@ -1,18 +0,0 @@
dist
dev-dist
.local
.output.js
node_modules
.nvmrc
coverage
CODEOWNERS
.nitro
.output
**/*.svg
**/*.sh
public
.npmrc
*-lock.yaml

View File

@@ -1 +0,0 @@
export { default } from '@vben/prettier-config';

View File

@@ -2,3 +2,7 @@ dist
public
__tests__
coverage
.codex
.claude
.agent
.agents

View File

@@ -2,14 +2,18 @@
"recommendations": [
// Vue 3 的语言支持
"Vue.volar",
// 将 ESLint JavaScript 集成到 VS Code 中。
// 将 eslint 集成到 VS Code 中。
"dbaeumer.vscode-eslint",
// 将 oxlint 集成到 VS Code 中。
"oxc.oxc-vscode",
// Visual Studio Code 的官方 Stylelint 扩展
"stylelint.vscode-stylelint",
// 使用 Prettier 的代码格式化程序
"esbenp.prettier-vscode",
// 使用 oxfmt 的代码格式化程序
"oxc.oxc-vscode",
// 支持 dotenv 文件语法
"mikestead.dotenv",
// YAML 语言支持,供 ESLint 校验 pnpm-workspace.yaml 等文件
"redhat.vscode-yaml",
// 源代码的拼写检查器
"streetsidesoftware.code-spell-checker",
// Tailwind CSS 的官方 VS Code 插件

6
.vscode/launch.json vendored
View File

@@ -4,12 +4,12 @@
"configurations": [
{
"type": "chrome",
"name": "vben admin playground dev",
"name": "vben admin antd dev",
"request": "launch",
"url": "http://localhost:5555",
"url": "http://localhost:5999",
"env": { "NODE_ENV": "development" },
"sourceMaps": true,
"webRoot": "${workspaceFolder}/playground"
"webRoot": "${workspaceFolder}/apps/web-antdv-next"
},
{
"type": "chrome",

64
.vscode/settings.json vendored
View File

@@ -1,5 +1,6 @@
{
"tailwindCSS.experimental.configFile": "internal/tailwind-config/src/index.ts",
"tailwindCSS.experimental.configFile": "internal/tailwind-config/src/theme.css",
"tailwindCSS.lint.suggestCanonicalClasses": "ignore",
// workbench
"workbench.list.smoothScrolling": true,
"workbench.startupEditor": "newUntitledFile",
@@ -31,39 +32,51 @@
"editor.autoClosingOvertype": "always",
"editor.autoClosingQuotes": "beforeWhitespace",
"editor.wordSeparators": "`~!@#%^&*()=+[{]}\\|;:'\",.<>/?",
"editor.quickSuggestions": {
"strings": "on"
},
// lint && format
"oxc.enable": true,
"oxc.typeAware": true,
"oxc.configPath": "oxlint.config.ts",
"oxc.fmt.configPath": "oxfmt.config.ts",
"eslint.useFlatConfig": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"source.fixAll.oxc": "explicit",
"source.fixAll.stylelint": "explicit",
"source.organizeImports": "never"
},
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.defaultFormatter": "oxc.oxc-vscode",
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
"[scss]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
"[markdown]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
"[vue]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "oxc.oxc-vscode"
},
// extensions
"extensions.ignoreRecommendations": true,
@@ -79,6 +92,7 @@
"files.insertFinalNewline": true,
"files.simpleDialog.enable": true,
"files.associations": {
"*.css": "tailwindcss",
"*.ejs": "html",
"*.art": "html",
"**/tsconfig.json": "jsonc",
@@ -118,7 +132,7 @@
// search
"search.searchEditor.singleClickBehaviour": "peekDefinition",
"search.followSymlinks": false,
// 使用搜索功能时,将这些文件夹/文件排除在外
// 使用搜索功能时,将这些文件文件排除在外
"search.exclude": {
"**/node_modules": true,
"**/*.log": true,
@@ -159,7 +173,7 @@
"emmet.triggerExpansionOnTab": false,
"errorLens.enabledDiagnosticLevels": ["warning", "error"],
"errorLens.excludeBySource": ["cSpell", "Grammarly", "eslint"],
"errorLens.excludeBySource": ["cSpell", "Grammarly"],
"stylelint.enable": true,
"stylelint.packageManager": "pnpm",
@@ -167,9 +181,10 @@
"stylelint.customSyntax": "postcss-html",
"stylelint.snippet": ["css", "less", "postcss", "scss", "vue"],
"typescript.inlayHints.enumMemberValues.enabled": true,
"typescript.preferences.preferTypeOnlyAutoImports": true,
"typescript.preferences.includePackageJsonAutoImports": "on",
"js/ts.tsdk.path": "node_modules/typescript/lib",
"js/ts.inlayHints.enumMemberValues.enabled": true,
"js/ts.preferences.preferTypeOnlyAutoImports": true,
"js/ts.preferences.includePackageJsonAutoImports": "on",
"eslint.validate": [
"javascript",
@@ -181,7 +196,8 @@
"markdown",
"json",
"jsonc",
"json5"
"json5",
"yaml"
],
"tailwindCSS.experimental.classRegex": [
@@ -189,13 +205,10 @@
],
"github.copilot.enable": {
"*": true,
"markdown": true,
"plaintext": false,
"yaml": false
"*": false
},
"cssVariables.lookupFiles": ["packages/core/base/design/src/**/*.css"],
"cssVariables.lookupFiles": ["packages/@core/base/design/src/**/*.css"],
"i18n-ally.localesPaths": [
"packages/locales/src/langs",
@@ -220,12 +233,9 @@
"*.env": "$(capture).env.*",
"README.md": "README*,CHANGELOG*,LICENSE,CNAME",
"package.json": "pnpm-lock.yaml,pnpm-workspace.yaml,.gitattributes,.gitignore,.gitpod.yml,.npmrc,.browserslistrc,.node-version,.git*,.tazerc.json",
"eslint.config.mjs": ".eslintignore,.prettierignore,.stylelintignore,.commitlintrc.*,.prettierrc.*,stylelint.config.*,.lintstagedrc.mjs,cspell.json,lefthook.yml",
"tailwind.config.mjs": "postcss.*"
"oxlint.config.ts": ".eslintignore,.stylelintignore,.commitlintrc.*,stylelint.config.*,.lintstagedrc.mjs,cspell.json,lefthook.yml,oxfmt.config.*,eslint.config.*"
},
"commentTranslate.hover.enabled": false,
"commentTranslate.multiLineMerge": true,
"vue.server.hybridMode": true,
"typescript.tsdk": "node_modules/typescript/lib",
"oxc.enable": false
"vue.server.hybridMode": true
}

113
README.md
View File

@@ -9,7 +9,7 @@
## 🐶 新手必读
- nodejs > 20.10.0 && pnpm > 10.10.0 (强制使用pnpm)
- nodejs >= v20.19.0(推荐 v22 / v24 && pnpm >= 10.32.1强制使用 pnpm
- 演示地址【Vue3 + element-plus】<http://dashboard-vue3.yudao.iocoder.cn>
- 演示地址【Vue3 + vben5(ant-design-vue)】:<http://dashboard-vben.yudao.iocoder.cn>
- 演示地址【Vue2 + element-ui】<http://dashboard.yudao.iocoder.cn>
@@ -20,12 +20,12 @@
**芋道**,以开发者为中心,打造中国第一流的快速开发平台,全部开源,个人与企业可 100% 免费使用。
- 采用最新 [vue-vben-admin](https://github.com/vbenjs/vue-vben-admin) v5 实现
- 支持 [Ant Design Vue](https://www.antdv.com/) | [Element Plus](https://element-plus.org/zh-CN/) | [Naive UI](https://www.naiveui.com/) 多种免费开源的中后台模版,具备如下特性:
- 采用最新 [vue-vben-admin](https://github.com/vbenjs/vue-vben-admin) v5.7.0 实现
- 支持 [Ant Design Vue](https://www.antdv.com/) | [Element Plus](https://element-plus.org/zh-CN/) | [Naive UI](https://www.naiveui.com/) | [TDesign](https://tdesign.tencent.com/) 多种免费开源的中后台模版,具备如下特性:
![首页](.image/demo/vben.png)
![首页](.gitee/image/demo/vben.png)
- **最新技术栈**:使用 Vue3、Vite6 等前端前沿技术开发
- **最新技术栈**:使用 Vue3、Vite8 等前端前沿技术开发
- **TypeScript**: 应用程序级 JavaScript 的语言
- **主题**: 提供多套主题色彩,可配置自定义主题
- **国际化**:内置完善的国际化方案
@@ -33,32 +33,34 @@
- **组件**:二次封装了多个常用的组件
- **示例**:内置丰富的示例
## 外包项目请联系【非项目需求请勿扫码,非客服,不解答项目问题】
## [外包项目请联系【非项目需求请勿扫码,非客服,不解答项目问题】](https://www.shuduokeji.com?yudao)
![alt 定制开发](.image/wx-xingyu.png)
![alt 软件定制开发 数舵科技](.gitee/image/wx-xingyu.png)
## 技术栈
| 框架 | 说明 | 版本 |
| --- | --- | --- |
| [Vue](https://staging-cn.vuejs.org/) | vue框架 | 3.5.13 |
| [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 6.2.5 |
| [Vue](https://staging-cn.vuejs.org/) | vue框架 | 3.5.30 |
| [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 8.0.0 |
| [Ant Design Vue](https://www.antdv.com/) | Ant Design Vue | 4.2.6 |
| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.9.7 |
| [Naive UI](https://www.naiveui.com/) | Naive UI | 2.41.0 |
| [TypeScript](https://www.typescriptlang.org/docs/) | JavaScript 超集 | 5.8.3 |
| [pinia](https://pinia.vuejs.org/) | Vue 存储库替代 vuex5 | 2.3.1 |
| [vueuse](https://vueuse.org/) | 常用工具集 | 12.8.2 |
| [vue-i18n](https://kazupon.github.io/vue-i18n/zh/introduction.html/) | 国际化 | 11.1.3 |
| [vue-router](https://router.vuejs.org/) | Vue 路由 | 4.5.0 |
| [Tailwind CSS](https://tailwindcss.com/) | 原子 CSS | 3.4.17 |
| [Iconify](https://icon-sets.iconify.design/) | 在线图标库 | 2.2.324 |
| [TinyMCE](https://www.tiny.cloud/) | 富文本编辑器 | 6.1.0 |
| [Echarts](https://echarts.apache.org/) | 图表库 | 5.6.0 |
| [axios](https://axios-http.com/) | http客户端 | 1.8.4 |
| [dayjs](https://day.js.org/) | 日期处理库 | 1.11.13 |
| [vee-validate](https://vee-validate.logaretm.com/) | 表单验证 | 4.15.0 |
| [zod](https://zod.dev/) | 数据验证 | 3.24.2 |
| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.13.5 |
| [Naive UI](https://www.naiveui.com/) | Naive UI | 2.44.1 |
| [TDesign](https://tdesign.tencent.com/) | TDesign | 1.18.5 |
| [TypeScript](https://www.typescriptlang.org/docs/) | JavaScript 超集 | 5.9.3 |
| [pinia](https://pinia.vuejs.org/) | Vue 存储库替代 vuex5 | 3.0.4 |
| [vueuse](https://vueuse.org/) | 常用工具集 | 14.2.1 |
| [vue-i18n](https://kazupon.github.io/vue-i18n/zh/introduction.html/) | 国际化 | 11.3.0 |
| [vue-router](https://router.vuejs.org/) | Vue 路由 | 5.0.3 |
| [Tailwind CSS](https://tailwindcss.com/) | 原子 CSS | 4.2.1 |
| [Iconify](https://iconify.design/) | 图标组件 | 5.0.0 |
| [Iconify](https://icon-sets.iconify.design/) | 在线图标库 | 2.2.449 |
| [TinyMCE](https://www.tiny.cloud/) | 富文本编辑器 | 7.3.0 |
| [Echarts](https://echarts.apache.org/) | 图表库 | 6.0.0 |
| [axios](https://axios-http.com/) | http客户端 | 1.13.6 |
| [dayjs](https://day.js.org/) | 日期处理库 | 1.11.20 |
| [vee-validate](https://vee-validate.logaretm.com/) | 表单验证 | 4.15.1 |
| [zod](https://zod.dev/) | 数据验证 | 3.25.76 |
## 🔥 后端架构
@@ -66,11 +68,11 @@
① Spring Boot 单体架构:<https://doc.iocoder.cn>
![架构图](/.image/common/ruoyi-vue-pro-architecture.png)
![架构图](/.gitee/image/common/ruoyi-vue-pro-architecture.png)
② Spring Cloud 微服务架构:<https://cloud.iocoder.cn>
![架构图](/.image/common/yudao-cloud-architecture.png)
![架构图](/.gitee/image/common/yudao-cloud-architecture.png)
## 内置功能
@@ -78,11 +80,11 @@
系统内置多种多种业务功能,可以用于快速你的业务系统:
![功能分层](/.image/common/ruoyi-vue-pro-biz.png)
![功能分层](/.gitee/image/common/ruoyi-vue-pro-biz.png)
- 通用模块(必选):系统功能、基础设施
- 通用模块(可选):工作流程、支付系统、数据报表、会员中心
- 业务系统(按需):ERP 系统、CRM 系统、商城系统、微信公众号、AI 大模型
- 业务系统(按需):Mall 电子商城、OA 办公自动化、ERP 企业资源计划系统、WMS 仓库管理系统、CRM 客户关系管理、CMS 内容管理系统、MES 执行制造系统、AI 大模型平台、IoT 物联网系统、IM 即时通讯系统、Mobile 手机移动端、Report 数据大屏
### 系统功能
@@ -108,17 +110,17 @@
| 🚀 | 应用管理 | 管理 SSO 单点登录的应用,支持多种 OAuth2 授权方式 |
| 🚀 | 地区管理 | 展示省份、城市、区镇等城市信息,支持 IP 对应城市 |
![功能图](/.image/common/system-feature.png)
![功能图](/.gitee/image/common/system-feature.png)
### 工作流程
![功能图](/.image/common/bpm-feature.png)
![功能图](/.gitee/image/common/bpm-feature.png)
基于 Flowable 构建,可支持信创(国产)数据库,满足中国特色流程操作:
| BPMN 设计器 | 钉钉/飞书设计器 |
| --- | --- |
| ![工作流设计器](.image/工作流设计器-bpmn.jpg) | ![工作流设计器](.image/工作流设计器-simple.jpg) |
| ![工作流设计器](.gitee/image/工作流设计器-bpmn.jpg) | ![工作流设计器](.gitee/image/工作流设计器-simple.jpg) |
> 历经头部企业生产验证,工作流引擎须标配仿钉钉/飞书 + BPMN 双设计器!!!
>
@@ -184,7 +186,7 @@
| 🚀 | 日志服务 | 轻量级日志中心,查看远程服务器的日志 |
| 🚀 | 单元测试 | 基于 JUnit + Mockito 实现单元测试,保证功能的正确性、代码的质量等 |
![功能图](/.image/common/infra-feature.png)
![功能图](/.gitee/image/common/infra-feature.png)
### 数据报表
@@ -201,6 +203,7 @@
| 🚀 | 数据统计 | 统计公众号的用户增减、累计用户、消息概况、接口分析等数据 |
| 🚀 | 粉丝管理 | 查看已关注、取关的粉丝列表,可对粉丝进行同步、打标签等操作 |
| 🚀 | 消息管理 | 查看粉丝发送的消息列表,可主动回复粉丝消息 |
| 🚀 | 模版消息 | 配置和发送模版消息,用于向粉丝推送通知类消息 |
| 🚀 | 自动回复 | 自动回复粉丝发送的消息,支持关注回复、消息回复、关键字回复 |
| 🚀 | 标签管理 | 对公众号的标签进行创建、查询、修改、删除等操作 |
| 🚀 | 菜单管理 | 自定义公众号的菜单,也可以从公众号同步菜单 |
@@ -212,26 +215,60 @@
演示地址:<https://doc.iocoder.cn/mall-preview/>
![功能图](/.image/common/mall-feature.png)
![功能图](/.gitee/image/common/mall-feature.png)
![功能图](/.image/common/mall-preview.png)
![功能图](/.gitee/image/common/mall-preview.png)
### 会员中心
| | 功能 | 描述 |
| --- | --- | --- |
| 🚀 | 会员管理 | 会员是 C 端的消费者,该功能用于会员的搜索与管理 |
| 🚀 | 会员标签 | 对会员的标签进行创建、查询、修改、删除等操作 |
| 🚀 | 会员等级 | 对会员的等级、成长值进行管理,可用于订单折扣等会员权益 |
| 🚀 | 会员分组 | 对会员进行分组,用于用户画像、内容推送等运营手段 |
| 🚀 | 积分签到 | 回馈给签到、消费等行为的积分,会员可订单抵现、积分兑换等途径消耗 |
### ERP 系统
演示地址:<https://doc.iocoder.cn/erp-preview/>
![功能图](/.image/common/erp-feature.png)
![功能图](/.gitee/image/common/erp-feature.png)
### WMS 系统
演示地址:<https://doc.iocoder.cn/wms-preview/>
![功能图](/.gitee/image/common/wms-feature.png)
![预览图](/.gitee/image/common/wms-preview.png)
### CRM 系统
演示地址:<https://doc.iocoder.cn/crm-preview/>
![功能图](/.image/common/crm-feature.png)
![功能图](/.gitee/image/common/crm-feature.png)
### MES 系统
演示地址:<https://doc.iocoder.cn/mes-preview/>
![功能图](/.gitee/image/common/mes-feature.png)
![功能图](/.gitee/image/common/mes-preview.png)
### AI 大模型
演示地址:<https://doc.iocoder.cn/ai-preview/>
![功能图](/.image/common/ai-feature.png)
![功能图](/.gitee/image/common/ai-feature.png)
![功能图](/.image/common/ai-preview.gif)
![功能图](/.gitee/image/common/ai-preview.gif)
### IoT 物联网
演示地址:<https://doc.iocoder.cn/iot/build>
![功能图](/.gitee/image/common/iot-feature.png)
![预览图](/.gitee/image/common/iot-preview.png)

View File

@@ -1,3 +0,0 @@
PORT=5320
ACCESS_TOKEN_SECRET=access_token_secret
REFRESH_TOKEN_SECRET=refresh_token_secret

View File

@@ -1,15 +0,0 @@
# @vben/backend-mock
## Description
Vben Admin 数据 mock 服务,没有对接任何的数据库,所有数据都是模拟的,用于前端开发时提供数据支持。线上环境不再提供 mock 集成,可自行部署服务或者对接真实数据,由于 `mock.js` 等工具有一些限制,比如上传文件不行、无法模拟复杂的逻辑等,所以这里使用了真实的后端服务来实现。唯一麻烦的是本地需要同时启动后端服务和前端服务,但是这样可以更好的模拟真实环境。该服务不需要手动启动,已经集成在 vite 插件内,随应用一起启用。
## Running the app
```bash
# development
$ pnpm run start
# production mode
$ pnpm run build
```

View File

@@ -1,14 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import { unAuthorizedResponse } from '~/utils/response';
export default eventHandler((event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
const codes =
MOCK_CODES.find((item) => item.username === userinfo.username)?.codes ?? [];
return useResponseSuccess(codes);
});

View File

@@ -1,36 +0,0 @@
import {
clearRefreshTokenCookie,
setRefreshTokenCookie,
} from '~/utils/cookie-utils';
import { generateAccessToken, generateRefreshToken } from '~/utils/jwt-utils';
import { forbiddenResponse } from '~/utils/response';
export default defineEventHandler(async (event) => {
const { password, username } = await readBody(event);
if (!password || !username) {
setResponseStatus(event, 400);
return useResponseError(
'BadRequestException',
'Username and password are required',
);
}
const findUser = MOCK_USERS.find(
(item) => item.username === username && item.password === password,
);
if (!findUser) {
clearRefreshTokenCookie(event);
return forbiddenResponse(event, 'Username or password is incorrect.');
}
const accessToken = generateAccessToken(findUser);
const refreshToken = generateRefreshToken(findUser);
setRefreshTokenCookie(event, refreshToken);
return useResponseSuccess({
...findUser,
accessToken,
});
});

View File

@@ -1,15 +0,0 @@
import {
clearRefreshTokenCookie,
getRefreshTokenFromCookie,
} from '~/utils/cookie-utils';
export default defineEventHandler(async (event) => {
const refreshToken = getRefreshTokenFromCookie(event);
if (!refreshToken) {
return useResponseSuccess('');
}
clearRefreshTokenCookie(event);
return useResponseSuccess('');
});

View File

@@ -1,33 +0,0 @@
import {
clearRefreshTokenCookie,
getRefreshTokenFromCookie,
setRefreshTokenCookie,
} from '~/utils/cookie-utils';
import { verifyRefreshToken } from '~/utils/jwt-utils';
import { forbiddenResponse } from '~/utils/response';
export default defineEventHandler(async (event) => {
const refreshToken = getRefreshTokenFromCookie(event);
if (!refreshToken) {
return forbiddenResponse(event);
}
clearRefreshTokenCookie(event);
const userinfo = verifyRefreshToken(refreshToken);
if (!userinfo) {
return forbiddenResponse(event);
}
const findUser = MOCK_USERS.find(
(item) => item.username === userinfo.username,
);
if (!findUser) {
return forbiddenResponse(event);
}
const accessToken = generateAccessToken(findUser);
setRefreshTokenCookie(event, refreshToken);
return accessToken;
});

View File

@@ -1,28 +0,0 @@
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
const data = `
{
"code": 0,
"message": "success",
"data": [
{
"id": 123456789012345678901234567890123456789012345678901234567890,
"name": "John Doe",
"age": 30,
"email": "john-doe@demo.com"
},
{
"id": 987654321098765432109876543210987654321098765432109876543210,
"name": "Jane Smith",
"age": 25,
"email": "jane@demo.com"
}
]
}
`;
setHeader(event, 'Content-Type', 'application/json');
return data;
});

View File

@@ -1,13 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import { unAuthorizedResponse } from '~/utils/response';
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
const menus =
MOCK_MENUS.find((item) => item.username === userinfo.username)?.menus ?? [];
return useResponseSuccess(menus);
});

View File

@@ -1,5 +0,0 @@
export default eventHandler((event) => {
const { status } = getQuery(event);
setResponseStatus(event, Number(status));
return useResponseError(`${status}`);
});

View File

@@ -1,15 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import {
sleep,
unAuthorizedResponse,
useResponseSuccess,
} from '~/utils/response';
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
await sleep(600);
return useResponseSuccess(null);
});

View File

@@ -1,15 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import {
sleep,
unAuthorizedResponse,
useResponseSuccess,
} from '~/utils/response';
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
await sleep(1000);
return useResponseSuccess(null);
});

View File

@@ -1,15 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import {
sleep,
unAuthorizedResponse,
useResponseSuccess,
} from '~/utils/response';
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
await sleep(2000);
return useResponseSuccess(null);
});

View File

@@ -1,61 +0,0 @@
import { faker } from '@faker-js/faker';
import { verifyAccessToken } from '~/utils/jwt-utils';
import { unAuthorizedResponse, useResponseSuccess } from '~/utils/response';
const formatterCN = new Intl.DateTimeFormat('zh-CN', {
timeZone: 'Asia/Shanghai',
year: 'numeric',
month: '2-digit',
day: '2-digit',
hour: '2-digit',
minute: '2-digit',
second: '2-digit',
});
function generateMockDataList(count: number) {
const dataList = [];
for (let i = 0; i < count; i++) {
const dataItem: Record<string, any> = {
id: faker.string.uuid(),
pid: 0,
name: faker.commerce.department(),
status: faker.helpers.arrayElement([0, 1]),
createTime: formatterCN.format(
faker.date.between({ from: '2021-01-01', to: '2022-12-31' }),
),
remark: faker.lorem.sentence(),
};
if (faker.datatype.boolean()) {
dataItem.children = Array.from(
{ length: faker.number.int({ min: 1, max: 5 }) },
() => ({
id: faker.string.uuid(),
pid: dataItem.id,
name: faker.commerce.department(),
status: faker.helpers.arrayElement([0, 1]),
createTime: formatterCN.format(
faker.date.between({ from: '2023-01-01', to: '2023-12-31' }),
),
remark: faker.lorem.sentence(),
}),
);
}
dataList.push(dataItem);
}
return dataList;
}
const mockData = generateMockDataList(10);
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
const listData = structuredClone(mockData);
return useResponseSuccess(listData);
});

View File

@@ -1,12 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import { MOCK_MENU_LIST } from '~/utils/mock-data';
import { unAuthorizedResponse, useResponseSuccess } from '~/utils/response';
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
return useResponseSuccess(MOCK_MENU_LIST);
});

View File

@@ -1,28 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import { MOCK_MENU_LIST } from '~/utils/mock-data';
import { unAuthorizedResponse } from '~/utils/response';
const namesMap: Record<string, any> = {};
function getNames(menus: any[]) {
menus.forEach((menu) => {
namesMap[menu.name] = String(menu.id);
if (menu.children) {
getNames(menu.children);
}
});
}
getNames(MOCK_MENU_LIST);
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
const { id, name } = getQuery(event);
return (name as string) in namesMap &&
(!id || namesMap[name as string] !== String(id))
? useResponseSuccess(true)
: useResponseSuccess(false);
});

View File

@@ -1,28 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import { MOCK_MENU_LIST } from '~/utils/mock-data';
import { unAuthorizedResponse } from '~/utils/response';
const pathMap: Record<string, any> = { '/': 0 };
function getPaths(menus: any[]) {
menus.forEach((menu) => {
pathMap[menu.path] = String(menu.id);
if (menu.children) {
getPaths(menu.children);
}
});
}
getPaths(MOCK_MENU_LIST);
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
const { id, path } = getQuery(event);
return (path as string) in pathMap &&
(!id || pathMap[path as string] !== String(id))
? useResponseSuccess(true)
: useResponseSuccess(false);
});

View File

@@ -1,83 +0,0 @@
import { faker } from '@faker-js/faker';
import { verifyAccessToken } from '~/utils/jwt-utils';
import { getMenuIds, MOCK_MENU_LIST } from '~/utils/mock-data';
import { unAuthorizedResponse, usePageResponseSuccess } from '~/utils/response';
const formatterCN = new Intl.DateTimeFormat('zh-CN', {
timeZone: 'Asia/Shanghai',
year: 'numeric',
month: '2-digit',
day: '2-digit',
hour: '2-digit',
minute: '2-digit',
second: '2-digit',
});
const menuIds = getMenuIds(MOCK_MENU_LIST);
function generateMockDataList(count: number) {
const dataList = [];
for (let i = 0; i < count; i++) {
const dataItem: Record<string, any> = {
id: faker.string.uuid(),
name: faker.commerce.product(),
status: faker.helpers.arrayElement([0, 1]),
createTime: formatterCN.format(
faker.date.between({ from: '2022-01-01', to: '2025-01-01' }),
),
permissions: faker.helpers.arrayElements(menuIds),
remark: faker.lorem.sentence(),
};
dataList.push(dataItem);
}
return dataList;
}
const mockData = generateMockDataList(100);
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
const {
page = 1,
pageSize = 20,
name,
id,
remark,
startTime,
endTime,
status,
} = getQuery(event);
let listData = structuredClone(mockData);
if (name) {
listData = listData.filter((item) =>
item.name.toLowerCase().includes(String(name).toLowerCase()),
);
}
if (id) {
listData = listData.filter((item) =>
item.id.toLowerCase().includes(String(id).toLowerCase()),
);
}
if (remark) {
listData = listData.filter((item) =>
item.remark?.toLowerCase()?.includes(String(remark).toLowerCase()),
);
}
if (startTime) {
listData = listData.filter((item) => item.createTime >= startTime);
}
if (endTime) {
listData = listData.filter((item) => item.createTime <= endTime);
}
if (['0', '1'].includes(status as string)) {
listData = listData.filter((item) => item.status === Number(status));
}
return usePageResponseSuccess(page as string, pageSize as string, listData);
});

View File

@@ -1,73 +0,0 @@
import { faker } from '@faker-js/faker';
import { verifyAccessToken } from '~/utils/jwt-utils';
import { unAuthorizedResponse, usePageResponseSuccess } from '~/utils/response';
function generateMockDataList(count: number) {
const dataList = [];
for (let i = 0; i < count; i++) {
const dataItem = {
id: faker.string.uuid(),
imageUrl: faker.image.avatar(),
imageUrl2: faker.image.avatar(),
open: faker.datatype.boolean(),
status: faker.helpers.arrayElement(['success', 'error', 'warning']),
productName: faker.commerce.productName(),
price: faker.commerce.price(),
currency: faker.finance.currencyCode(),
quantity: faker.number.int({ min: 1, max: 100 }),
available: faker.datatype.boolean(),
category: faker.commerce.department(),
releaseDate: faker.date.past(),
rating: faker.number.float({ min: 1, max: 5 }),
description: faker.commerce.productDescription(),
weight: faker.number.float({ min: 0.1, max: 10 }),
color: faker.color.human(),
inProduction: faker.datatype.boolean(),
tags: Array.from({ length: 3 }, () => faker.commerce.productAdjective()),
};
dataList.push(dataItem);
}
return dataList;
}
const mockData = generateMockDataList(100);
export default eventHandler(async (event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
await sleep(600);
const { page, pageSize, sortBy, sortOrder } = getQuery(event);
const listData = structuredClone(mockData);
if (sortBy && Reflect.has(listData[0], sortBy as string)) {
listData.sort((a, b) => {
if (sortOrder === 'asc') {
if (sortBy === 'price') {
return (
Number.parseFloat(a[sortBy as string]) -
Number.parseFloat(b[sortBy as string])
);
} else {
return a[sortBy as string] > b[sortBy as string] ? 1 : -1;
}
} else {
if (sortBy === 'price') {
return (
Number.parseFloat(b[sortBy as string]) -
Number.parseFloat(a[sortBy as string])
);
} else {
return a[sortBy as string] < b[sortBy as string] ? 1 : -1;
}
}
});
}
return usePageResponseSuccess(page as string, pageSize as string, listData);
});

View File

@@ -1 +0,0 @@
export default defineEventHandler(() => 'Test get handler');

View File

@@ -1 +0,0 @@
export default defineEventHandler(() => 'Test post handler');

View File

@@ -1,13 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import { unAuthorizedResponse } from '~/utils/response';
export default eventHandler((event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
return useResponseSuccess({
url: 'https://unpkg.com/@vbenjs/static-source@0.1.7/source/logo-v1.webp',
});
// return useResponseError("test")
});

View File

@@ -1,10 +0,0 @@
import { verifyAccessToken } from '~/utils/jwt-utils';
import { unAuthorizedResponse } from '~/utils/response';
export default eventHandler((event) => {
const userinfo = verifyAccessToken(event);
if (!userinfo) {
return unAuthorizedResponse(event);
}
return useResponseSuccess(userinfo);
});

View File

@@ -1,7 +0,0 @@
import type { NitroErrorHandler } from 'nitropack';
const errorHandler: NitroErrorHandler = function (error, event) {
event.node.res.end(`[Error Handler] ${error.stack}`);
};
export default errorHandler;

View File

@@ -1,19 +0,0 @@
import { forbiddenResponse, sleep } from '~/utils/response';
export default defineEventHandler(async (event) => {
event.node.res.setHeader(
'Access-Control-Allow-Origin',
event.headers.get('Origin') ?? '*',
);
if (event.method === 'OPTIONS') {
event.node.res.statusCode = 204;
event.node.res.statusMessage = 'No Content.';
return 'OK';
} else if (
['DELETE', 'PATCH', 'POST', 'PUT'].includes(event.method) &&
event.path.startsWith('/api/system/')
) {
await sleep(Math.floor(Math.random() * 2000));
return forbiddenResponse(event, '演示环境,禁止修改');
}
});

View File

@@ -1,20 +0,0 @@
import errorHandler from './error';
process.env.COMPATIBILITY_DATE = new Date().toISOString();
export default defineNitroConfig({
devErrorHandler: errorHandler,
errorHandler: '~/error',
routeRules: {
'/api/**': {
cors: true,
headers: {
'Access-Control-Allow-Credentials': 'true',
'Access-Control-Allow-Headers':
'Accept, Authorization, Content-Length, Content-Type, If-Match, If-Modified-Since, If-None-Match, If-Unmodified-Since, X-CSRF-TOKEN, X-Requested-With',
'Access-Control-Allow-Methods': 'GET,HEAD,PUT,PATCH,POST,DELETE',
'Access-Control-Allow-Origin': '*',
'Access-Control-Expose-Headers': '*',
},
},
},
});

View File

@@ -1,21 +0,0 @@
{
"name": "@vben/backend-mock",
"version": "0.0.1",
"description": "",
"private": true,
"license": "MIT",
"author": "",
"scripts": {
"build": "nitro build",
"start": "nitro dev"
},
"dependencies": {
"@faker-js/faker": "catalog:",
"jsonwebtoken": "catalog:",
"nitropack": "catalog:"
},
"devDependencies": {
"@types/jsonwebtoken": "catalog:",
"h3": "catalog:"
}
}

View File

@@ -1,13 +0,0 @@
export default defineEventHandler(() => {
return `
<h1>Hello Vben Admin</h1>
<h2>Mock service is starting</h2>
<ul>
<li><a href="/api/user">/api/user/info</a></li>
<li><a href="/api/menu">/api/menu/all</a></li>
<li><a href="/api/auth/codes">/api/auth/codes</a></li>
<li><a href="/api/auth/login">/api/auth/login</a></li>
<li><a href="/api/upload">/api/upload</a></li>
</ul>
`;
});

View File

@@ -1,4 +0,0 @@
{
"extends": "./tsconfig.json",
"exclude": ["node_modules", "test", "dist", "**/*spec.ts"]
}

View File

@@ -1,3 +0,0 @@
{
"extends": "./.nitro/types/tsconfig.json"
}

View File

@@ -1,26 +0,0 @@
import type { EventHandlerRequest, H3Event } from 'h3';
export function clearRefreshTokenCookie(event: H3Event<EventHandlerRequest>) {
deleteCookie(event, 'jwt', {
httpOnly: true,
sameSite: 'none',
secure: true,
});
}
export function setRefreshTokenCookie(
event: H3Event<EventHandlerRequest>,
refreshToken: string,
) {
setCookie(event, 'jwt', refreshToken, {
httpOnly: true,
maxAge: 24 * 60 * 60, // unit: seconds
sameSite: 'none',
secure: true,
});
}
export function getRefreshTokenFromCookie(event: H3Event<EventHandlerRequest>) {
const refreshToken = getCookie(event, 'jwt');
return refreshToken;
}

View File

@@ -1,59 +0,0 @@
import type { EventHandlerRequest, H3Event } from 'h3';
import jwt from 'jsonwebtoken';
import { UserInfo } from './mock-data';
// TODO: Replace with your own secret key
const ACCESS_TOKEN_SECRET = 'access_token_secret';
const REFRESH_TOKEN_SECRET = 'refresh_token_secret';
export interface UserPayload extends UserInfo {
iat: number;
exp: number;
}
export function generateAccessToken(user: UserInfo) {
return jwt.sign(user, ACCESS_TOKEN_SECRET, { expiresIn: '7d' });
}
export function generateRefreshToken(user: UserInfo) {
return jwt.sign(user, REFRESH_TOKEN_SECRET, {
expiresIn: '30d',
});
}
export function verifyAccessToken(
event: H3Event<EventHandlerRequest>,
): null | Omit<UserInfo, 'password'> {
const authHeader = getHeader(event, 'Authorization');
if (!authHeader?.startsWith('Bearer')) {
return null;
}
const token = authHeader.split(' ')[1];
try {
const decoded = jwt.verify(token, ACCESS_TOKEN_SECRET) as UserPayload;
const username = decoded.username;
const user = MOCK_USERS.find((item) => item.username === username);
const { password: _pwd, ...userinfo } = user;
return userinfo;
} catch {
return null;
}
}
export function verifyRefreshToken(
token: string,
): null | Omit<UserInfo, 'password'> {
try {
const decoded = jwt.verify(token, REFRESH_TOKEN_SECRET) as UserPayload;
const username = decoded.username;
const user = MOCK_USERS.find((item) => item.username === username);
const { password: _pwd, ...userinfo } = user;
return userinfo;
} catch {
return null;
}
}

View File

@@ -1,390 +0,0 @@
export interface UserInfo {
id: number;
password: string;
realName: string;
roles: string[];
username: string;
homePath?: string;
}
export const MOCK_USERS: UserInfo[] = [
{
id: 0,
password: '123456',
realName: 'Vben',
roles: ['super'],
username: 'vben',
},
{
id: 1,
password: '123456',
realName: 'Admin',
roles: ['admin'],
username: 'admin',
homePath: '/workspace',
},
{
id: 2,
password: '123456',
realName: 'Jack',
roles: ['user'],
username: 'jack',
homePath: '/analytics',
},
];
export const MOCK_CODES = [
// super
{
codes: ['AC_100100', 'AC_100110', 'AC_100120', 'AC_100010'],
username: 'vben',
},
{
// admin
codes: ['AC_100010', 'AC_100020', 'AC_100030'],
username: 'admin',
},
{
// user
codes: ['AC_1000001', 'AC_1000002'],
username: 'jack',
},
];
const dashboardMenus = [
{
meta: {
order: -1,
title: 'page.dashboard.title',
},
name: 'Dashboard',
path: '/dashboard',
redirect: '/analytics',
children: [
{
name: 'Analytics',
path: '/analytics',
component: '/dashboard/analytics/index',
meta: {
affixTab: true,
title: 'page.dashboard.analytics',
},
},
{
name: 'Workspace',
path: '/workspace',
component: '/dashboard/workspace/index',
meta: {
title: 'page.dashboard.workspace',
},
},
],
},
];
const createDemosMenus = (role: 'admin' | 'super' | 'user') => {
const roleWithMenus = {
admin: {
component: '/demos/access/admin-visible',
meta: {
icon: 'mdi:button-cursor',
title: 'demos.access.adminVisible',
},
name: 'AccessAdminVisibleDemo',
path: '/demos/access/admin-visible',
},
super: {
component: '/demos/access/super-visible',
meta: {
icon: 'mdi:button-cursor',
title: 'demos.access.superVisible',
},
name: 'AccessSuperVisibleDemo',
path: '/demos/access/super-visible',
},
user: {
component: '/demos/access/user-visible',
meta: {
icon: 'mdi:button-cursor',
title: 'demos.access.userVisible',
},
name: 'AccessUserVisibleDemo',
path: '/demos/access/user-visible',
},
};
return [
{
meta: {
icon: 'ic:baseline-view-in-ar',
keepAlive: true,
order: 1000,
title: 'demos.title',
},
name: 'Demos',
path: '/demos',
redirect: '/demos/access',
children: [
{
name: 'AccessDemos',
path: '/demosaccess',
meta: {
icon: 'mdi:cloud-key-outline',
title: 'demos.access.backendPermissions',
},
redirect: '/demos/access/page-control',
children: [
{
name: 'AccessPageControlDemo',
path: '/demos/access/page-control',
component: '/demos/access/index',
meta: {
icon: 'mdi:page-previous-outline',
title: 'demos.access.pageAccess',
},
},
{
name: 'AccessButtonControlDemo',
path: '/demos/access/button-control',
component: '/demos/access/button-control',
meta: {
icon: 'mdi:button-cursor',
title: 'demos.access.buttonControl',
},
},
{
name: 'AccessMenuVisible403Demo',
path: '/demos/access/menu-visible-403',
component: '/demos/access/menu-visible-403',
meta: {
authority: ['no-body'],
icon: 'mdi:button-cursor',
menuVisibleWithForbidden: true,
title: 'demos.access.menuVisible403',
},
},
roleWithMenus[role],
],
},
],
},
];
};
export const MOCK_MENUS = [
{
menus: [...dashboardMenus, ...createDemosMenus('super')],
username: 'vben',
},
{
menus: [...dashboardMenus, ...createDemosMenus('admin')],
username: 'admin',
},
{
menus: [...dashboardMenus, ...createDemosMenus('user')],
username: 'jack',
},
];
export const MOCK_MENU_LIST = [
{
id: 1,
name: 'Workspace',
status: 1,
type: 'menu',
icon: 'mdi:dashboard',
path: '/workspace',
component: '/dashboard/workspace/index',
meta: {
icon: 'carbon:workspace',
title: 'page.dashboard.workspace',
affixTab: true,
order: 0,
},
},
{
id: 2,
meta: {
icon: 'carbon:settings',
order: 9997,
title: 'system.title',
badge: 'new',
badgeType: 'normal',
badgeVariants: 'primary',
},
status: 1,
type: 'catalog',
name: 'System',
path: '/system',
children: [
{
id: 201,
pid: 2,
path: '/system/menu',
name: 'SystemMenu',
authCode: 'System:Menu:List',
status: 1,
type: 'menu',
meta: {
icon: 'carbon:menu',
title: 'system.menu.title',
},
component: '/system/menu/list',
children: [
{
id: 20_101,
pid: 201,
name: 'SystemMenuCreate',
status: 1,
type: 'button',
authCode: 'System:Menu:Create',
meta: { title: 'common.create' },
},
{
id: 20_102,
pid: 201,
name: 'SystemMenuEdit',
status: 1,
type: 'button',
authCode: 'System:Menu:Edit',
meta: { title: 'common.edit' },
},
{
id: 20_103,
pid: 201,
name: 'SystemMenuDelete',
status: 1,
type: 'button',
authCode: 'System:Menu:Delete',
meta: { title: 'common.delete' },
},
],
},
{
id: 202,
pid: 2,
path: '/system/dept',
name: 'SystemDept',
status: 1,
type: 'menu',
authCode: 'System:Dept:List',
meta: {
icon: 'carbon:container-services',
title: 'system.dept.title',
},
component: '/system/dept/list',
children: [
{
id: 20_401,
pid: 201,
name: 'SystemDeptCreate',
status: 1,
type: 'button',
authCode: 'System:Dept:Create',
meta: { title: 'common.create' },
},
{
id: 20_402,
pid: 201,
name: 'SystemDeptEdit',
status: 1,
type: 'button',
authCode: 'System:Dept:Edit',
meta: { title: 'common.edit' },
},
{
id: 20_403,
pid: 201,
name: 'SystemDeptDelete',
status: 1,
type: 'button',
authCode: 'System:Dept:Delete',
meta: { title: 'common.delete' },
},
],
},
],
},
{
id: 9,
meta: {
badgeType: 'dot',
order: 9998,
title: 'demos.vben.title',
icon: 'carbon:data-center',
},
name: 'Project',
path: '/vben-admin',
type: 'catalog',
status: 1,
children: [
{
id: 901,
pid: 9,
name: 'VbenDocument',
path: '/vben-admin/document',
component: 'IFrameView',
type: 'embedded',
status: 1,
meta: {
icon: 'carbon:book',
iframeSrc: 'https://doc.vben.pro',
title: 'demos.vben.document',
},
},
{
id: 902,
pid: 9,
name: 'VbenGithub',
path: '/vben-admin/github',
component: 'IFrameView',
type: 'link',
status: 1,
meta: {
icon: 'carbon:logo-github',
link: 'https://github.com/vbenjs/vue-vben-admin',
title: 'Github',
},
},
{
id: 903,
pid: 9,
name: 'VbenAntdv',
path: '/vben-admin/antdv',
component: 'IFrameView',
type: 'link',
status: 0,
meta: {
icon: 'carbon:hexagon-vertical-solid',
badgeType: 'dot',
link: 'https://ant.vben.pro',
title: 'demos.vben.antdv',
},
},
],
},
{
id: 10,
component: '_core/about/index',
type: 'menu',
status: 1,
meta: {
icon: 'lucide:copyright',
order: 9999,
title: 'demos.vben.about',
},
name: 'About',
path: '/about',
},
];
export function getMenuIds(menus: any[]) {
const ids: number[] = [];
menus.forEach((item) => {
ids.push(item.id);
if (item.children && item.children.length > 0) {
ids.push(...getMenuIds(item.children));
}
});
return ids;
}

View File

@@ -1,68 +0,0 @@
import type { EventHandlerRequest, H3Event } from 'h3';
export function useResponseSuccess<T = any>(data: T) {
return {
code: 0,
data,
error: null,
message: 'ok',
};
}
export function usePageResponseSuccess<T = any>(
page: number | string,
pageSize: number | string,
list: T[],
{ message = 'ok' } = {},
) {
const pageData = pagination(
Number.parseInt(`${page}`),
Number.parseInt(`${pageSize}`),
list,
);
return {
...useResponseSuccess({
items: pageData,
total: list.length,
}),
message,
};
}
export function useResponseError(message: string, error: any = null) {
return {
code: -1,
data: null,
error,
message,
};
}
export function forbiddenResponse(
event: H3Event<EventHandlerRequest>,
message = 'Forbidden Exception',
) {
setResponseStatus(event, 403);
return useResponseError(message, message);
}
export function unAuthorizedResponse(event: H3Event<EventHandlerRequest>) {
setResponseStatus(event, 401);
return useResponseError('Unauthorized Exception', 'Unauthorized Exception');
}
export function sleep(ms: number) {
return new Promise((resolve) => setTimeout(resolve, ms));
}
export function pagination<T = any>(
pageNo: number,
pageSize: number,
array: T[],
): T[] {
const offset = (pageNo - 1) * Number(pageSize);
return offset + Number(pageSize) >= array.length
? array.slice(offset)
: array.slice(offset, offset + Number(pageSize));
}

View File

@@ -24,3 +24,15 @@ VITE_APP_BAIDU_CODE = e98f2eab6ceb8688bc6d8fc5332ff093
# GoView域名
VITE_GOVIEW_URL='http://127.0.0.1:3000'
# API 加解密
VITE_APP_API_ENCRYPT_ENABLE = true
VITE_APP_API_ENCRYPT_HEADER = X-Api-Encrypt
VITE_APP_API_ENCRYPT_ALGORITHM = AES
VITE_APP_API_ENCRYPT_REQUEST_KEY = 52549111389893486934626385991395
VITE_APP_API_ENCRYPT_RESPONSE_KEY = 96103715984234343991809655248883
# VITE_APP_API_ENCRYPT_REQUEST_KEY = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCls2rIpnGdYnLFgz1XU13GbNQ5DloyPpvW00FPGjqn5Z6JpK+kDtVlnkhwR87iRrE5Vf2WNqRX6vzbLSgveIQY8e8oqGCb829myjf1MuI+ZzN4ghf/7tEYhZJGPI9AbfxFqBUzm+kR3/HByAI22GLT96WM26QiMK8n3tIP/yiLswIDAQAB
# VITE_APP_API_ENCRYPT_RESPONSE_KEY = MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAOH8IfIFxL/MR9XIg1UDv5z1fGXQI93E8wrU4iPFovL/sEt9uSgSkjyidC2O7N+m7EKtoN6b1u7cEwXSkwf3kfK0jdWLSQaNpX5YshqXCBzbDfugDaxuyYrNA4/tIMs7mzZAk0APuRXB35Dmupou7Yw7TFW/7QhQmGfzeEKULQvnAgMBAAECgYAw8LqlQGyQoPv5p3gRxEMOCfgL0JzD3XBJKztiRd35RDh40Nx1ejgjW4dPioFwGiVWd2W8cAGHLzALdcQT2KDJh+T/tsd4SPmI6uSBBK6Ff2DkO+kFFcuYvfclQQKqxma5CaZOSqhgenacmgTMFeg2eKlY3symV6JlFNu/IKU42QJBAOhxAK/Eq3e61aYQV2JSguhMR3b8NXJJRroRs/QHEanksJtl+M+2qhkC9nQVXBmBkndnkU/l2tYcHfSBlAyFySMCQQD445tgm/J2b6qMQmuUGQAYDN8FIkHjeKmha+l/fv0igWm8NDlBAem91lNDIPBUzHL1X1+pcts5bjmq99YdOnhtAkAg2J8dN3B3idpZDiQbC8fd5bGPmdI/pSUudAP27uzLEjr2qrE/QPPGdwm2m7IZFJtK7kK1hKio6u48t/bg0iL7AkEAuUUs94h+v702Fnym+jJ2CHEkXvz2US8UDs52nWrZYiM1o1y4tfSHm8H8bv8JCAa9GHyriEawfBraILOmllFdLQJAQSRZy4wmlaG48MhVXodB85X+VZ9krGXZ2TLhz7kz9iuToy53l9jTkESt6L5BfBDCVdIwcXLYgK+8KFdHN5W7HQ==
# 百度地图
VITE_BAIDU_MAP_KEY=Y2aJXiswwPxy6mwFs1z9c7U5gwX9WfUN

View File

@@ -21,3 +21,6 @@ VITE_INJECT_APP_LOADING=true
# 打包后是否生成dist.zip
VITE_ARCHIVER=true
# 验证码的开关
VITE_APP_CAPTCHA_ENABLE=true

View File

@@ -12,16 +12,15 @@
content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=0"
/>
<!-- 由 vite 注入 VITE_APP_TITLE 变量,在 .env 文件内配置 -->
<title><%= VITE_APP_TITLE %></title>
<title>%VITE_APP_TITLE%</title>
<link rel="icon" href="/favicon.ico" />
<script>
var HM_ID = '<%= VITE_APP_BAIDU_CODE %>'
var HM_ID = '<%= VITE_APP_BAIDU_CODE %>';
if (HM_ID) {
var _hmt = _hmt || [];
(function () {
var hm = document.createElement('script');
hm.src =
'https://hm.baidu.com/hm.js?' + HM_ID;
hm.src = 'https://hm.baidu.com/hm.js?' + HM_ID;
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(hm, s);
})();

View File

@@ -1,6 +1,6 @@
{
"name": "@vben/web-antd",
"version": "5.5.7",
"version": "5.7.0",
"homepage": "https://vben.pro",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
@@ -43,20 +43,29 @@
"@vben/styles": "workspace:*",
"@vben/types": "workspace:*",
"@vben/utils": "workspace:*",
"@videojs-player/vue": "catalog:",
"@vueuse/core": "catalog:",
"@vueuse/integrations": "catalog:",
"ant-design-vue": "catalog:",
"benz-amr-recorder": "catalog:",
"bpmn-js": "catalog:",
"bpmn-js-properties-panel": "catalog:",
"bpmn-js-token-simulation": "catalog:",
"camunda-bpmn-moddle": "catalog:",
"cropperjs": "catalog:",
"crypto-js": "catalog:",
"dayjs": "catalog:",
"diagram-js": "catalog:",
"fast-xml-parser": "catalog:",
"highlight.js": "catalog:",
"pinia": "catalog:",
"steady-xml": "catalog:",
"tinymce": "catalog:",
"video.js": "catalog:",
"vue": "catalog:",
"vue-dompurify-html": "catalog:",
"vue-router": "catalog:",
"vue3-signature": "catalog:"
},
"devDependencies": {
"@types/crypto-js": "catalog:"
"vue3-print-nb": "catalog:",
"vue3-signature": "catalog:",
"vuedraggable": "catalog:"
}
}

View File

@@ -1 +0,0 @@
export { default } from '@vben/tailwind-config/postcss';

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

View File

@@ -2537,12 +2537,12 @@ interface EditorSelection {
normalize: () => Range;
selectorChanged: (selector: string, callback: (active: boolean, args: {
node: Node;
selector: String;
selector: string;
parents: Node[];
}) => void) => EditorSelection;
selectorChangedWithUnbind: (selector: string, callback: (active: boolean, args: {
node: Node;
selector: String;
selector: string;
parents: Node[];
}) => void) => {
unbind: () => void;
@@ -3217,9 +3217,9 @@ interface Tools {
<T, R>(arr: ArrayLike<T> | null | undefined, cb: ArrayCallback<T, R>): R[];
<T, R>(obj: Record<string, T> | null | undefined, cb: ObjCallback<T, R>): R[];
};
extend: (obj: Object, ext: Object, ...objs: Object[]) => any;
extend: (obj: object, ext: object, ...objs: object[]) => any;
walk: <T extends Record<string, any>>(obj: T, f: WalkCallback<T>, n?: keyof T, scope?: any) => void;
resolve: (path: string, o?: Object) => any;
resolve: (path: string, o?: object) => any;
explode: (s: string | string[], d?: string | RegExp) => string[];
_addCacheSuffix: (url: string) => string;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 495 KiB

View File

@@ -3,26 +3,82 @@
* 可用于 vben-form、vben-modal、vben-drawer 等组件使用,
*/
import type { Component } from 'vue';
/* eslint-disable vue/one-component-per-file */
import type { BaseFormComponentType } from '@vben/common-ui';
import type {
AutoCompleteProps,
ButtonProps,
CascaderProps,
CheckboxGroupProps,
CheckboxProps,
DatePickerProps,
DividerProps,
InputNumberProps,
InputProps,
MentionsProps,
RadioGroupProps,
RadioProps,
RateProps,
SelectProps,
SpaceProps,
SwitchProps,
TextAreaProps,
TimePickerProps,
TreeSelectProps,
UploadChangeParam,
UploadFile,
UploadProps,
} from 'ant-design-vue';
import type { RangePickerProps } from 'ant-design-vue/es/date-picker';
import type { Component, Ref } from 'vue';
import type {
ApiComponentSharedProps,
BaseFormComponentType,
IconPickerProps,
} from '@vben/common-ui';
import type { Sortable } from '@vben/hooks';
import type { Recordable } from '@vben/types';
import {
computed,
defineAsyncComponent,
defineComponent,
getCurrentInstance,
h,
nextTick,
onMounted,
onUnmounted,
ref,
render,
unref,
watch,
} from 'vue';
import { ApiComponent, globalShareState, IconPicker } from '@vben/common-ui';
import {
ApiComponent,
globalShareState,
IconPicker,
VCropper,
} from '@vben/common-ui';
import { useSortable } from '@vben/hooks';
import { IconifyIcon } from '@vben/icons';
import { $t } from '@vben/locales';
import { isEmpty } from '@vben/utils';
import { notification } from 'ant-design-vue';
import { message, Modal, notification } from 'ant-design-vue';
import { Tinymce as RichTextarea } from '#/components/tinymce';
import { FileUpload, ImageUpload } from '#/components/upload';
type AdapterUploadProps = UploadProps & {
aspectRatio?: string;
crop?: boolean;
draggable?: boolean;
handleChange?: (event: UploadChangeParam) => void;
maxSize?: number;
onDragSort?: (oldIndex: number, newIndex: number) => void;
onHandleChange?: (event: UploadChangeParam) => void;
};
const AutoComplete = defineAsyncComponent(
() => import('ant-design-vue/es/auto-complete'),
@@ -65,10 +121,20 @@ const Textarea = defineAsyncComponent(() =>
const TimePicker = defineAsyncComponent(
() => import('ant-design-vue/es/time-picker'),
);
const TimeRangePicker = defineAsyncComponent(() =>
import('ant-design-vue/es/time-picker').then((res) => res.TimeRangePicker),
);
const TreeSelect = defineAsyncComponent(
() => import('ant-design-vue/es/tree-select'),
);
const Cascader = defineAsyncComponent(
() => import('ant-design-vue/es/cascader'),
);
const Upload = defineAsyncComponent(() => import('ant-design-vue/es/upload'));
const Image = defineAsyncComponent(() => import('ant-design-vue/es/image'));
const PreviewGroup = defineAsyncComponent(() =>
import('ant-design-vue/es/image').then((res) => res.ImagePreviewGroup),
);
const withDefaultPlaceholder = <T extends Component>(
component: T,
@@ -85,16 +151,15 @@ const withDefaultPlaceholder = <T extends Component>(
$t(`ui.placeholder.${type}`);
// 透传组件暴露的方法
const innerRef = ref();
const publicApi: Recordable<any> = {};
expose(publicApi);
const instance = getCurrentInstance();
instance?.proxy?.$nextTick(() => {
for (const key in innerRef.value) {
if (typeof innerRef.value[key] === 'function') {
publicApi[key] = innerRef.value[key];
}
}
});
expose(
new Proxy(
{},
{
get: (_target, key) => innerRef.value?.[key],
has: (_target, key) => key in (innerRef.value || {}),
},
),
);
return () =>
h(
component,
@@ -105,11 +170,443 @@ const withDefaultPlaceholder = <T extends Component>(
});
};
const IMAGE_EXTENSIONS = new Set([
'bmp',
'gif',
'jpeg',
'jpg',
'png',
'svg',
'webp',
]);
/**
* 检查是否为图片文件
*/
function isImageFile(file: UploadFile): boolean {
if (file.url) {
try {
const pathname = new URL(file.url, 'http://localhost').pathname;
const ext = pathname.split('.').pop()?.toLowerCase();
return ext ? IMAGE_EXTENSIONS.has(ext) : false;
} catch {
const ext = file.url?.split('.').pop()?.toLowerCase();
return ext ? IMAGE_EXTENSIONS.has(ext) : false;
}
}
if (!file.type) {
const ext = file.name?.split('.').pop()?.toLowerCase();
return ext ? IMAGE_EXTENSIONS.has(ext) : false;
}
return file.type.startsWith('image/');
}
/**
* 创建默认的上传按钮插槽
*/
function createDefaultUploadSlots(listType: string, placeholder: string) {
if (listType === 'picture-card') {
return { default: () => placeholder };
}
return {
default: () =>
h(
Button,
{
icon: h(IconifyIcon, {
icon: 'ant-design:upload-outlined',
class: 'mb-1 size-4',
}),
},
() => placeholder,
),
};
}
/**
* 获取文件的 Base64
*/
function getBase64(file: File): Promise<string> {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.addEventListener('load', () => resolve(reader.result as string));
reader.addEventListener('error', reject);
});
}
/**
* 预览图片
*/
async function previewImage(
file: UploadFile,
visible: Ref<boolean>,
fileList: Ref<UploadProps['fileList']>,
) {
// 非图片文件直接打开链接
if (!isImageFile(file)) {
const url = file.url || file.preview;
if (url) {
window.open(url, '_blank');
} else {
message.error($t('ui.formRules.previewWarning'));
}
return;
}
const [ImageComponent, PreviewGroupComponent] = await Promise.all([
Image,
PreviewGroup,
]);
// 过滤图片文件并生成预览
const imageFiles = (unref(fileList) || []).filter((f) => isImageFile(f));
for (const imgFile of imageFiles) {
if (!imgFile.url && !imgFile.preview && imgFile.originFileObj) {
imgFile.preview = await getBase64(imgFile.originFileObj);
}
}
const container = document.createElement('div');
document.body.append(container);
let isUnmounted = false;
const currentIndex = imageFiles.findIndex((f) => f.uid === file.uid);
const PreviewWrapper = {
setup() {
return () => {
if (isUnmounted) return null;
return h(
PreviewGroupComponent,
{
class: 'hidden',
preview: {
visible: visible.value,
current: currentIndex,
onVisibleChange: (value: boolean) => {
visible.value = value;
if (!value) {
setTimeout(() => {
if (!isUnmounted && container) {
isUnmounted = true;
render(null, container);
container.remove();
}
}, 300);
}
},
},
},
() =>
imageFiles.map((imgFile) =>
h(ImageComponent, {
key: imgFile.uid,
src: imgFile.url || imgFile.preview,
}),
),
);
};
},
};
render(h(PreviewWrapper), container);
}
/**
* 图片裁剪操作
*/
function cropImage(file: File, aspectRatio: string | undefined) {
return new Promise<Blob | string | undefined>((resolve, reject) => {
const container = document.createElement('div');
document.body.append(container);
let isUnmounted = false;
let objectUrl: null | string = null;
const open = ref<boolean>(true);
const cropperRef = ref<InstanceType<typeof VCropper> | null>(null);
const closeModal = () => {
open.value = false;
setTimeout(() => {
if (!isUnmounted && container) {
if (objectUrl) {
URL.revokeObjectURL(objectUrl);
}
isUnmounted = true;
render(null, container);
container.remove();
}
}, 300);
};
const CropperWrapper = {
setup() {
return () => {
if (isUnmounted) return null;
if (!objectUrl) {
objectUrl = URL.createObjectURL(file);
}
return h(
Modal,
{
open: open.value,
title: h('div', {}, [
$t('ui.crop.title'),
h(
'span',
{
class: `${aspectRatio ? '' : 'hidden'} ml-2 text-sm text-gray-400 font-normal`,
},
$t('ui.crop.titleTip', [aspectRatio]),
),
]),
centered: true,
width: 548,
keyboard: false,
maskClosable: false,
closable: false,
cancelText: $t('common.cancel'),
okText: $t('ui.crop.confirm'),
destroyOnClose: true,
onOk: async () => {
const cropper = cropperRef.value;
if (!cropper) {
reject(new Error('Cropper not found'));
closeModal();
return;
}
try {
const dataUrl = await cropper.getCropImage();
if (dataUrl) {
resolve(dataUrl);
} else {
reject(new Error($t('ui.crop.errorTip')));
}
} catch {
reject(new Error($t('ui.crop.errorTip')));
} finally {
closeModal();
}
},
onCancel() {
resolve('');
closeModal();
},
},
() =>
h(VCropper, {
ref: (ref: any) => (cropperRef.value = ref),
img: objectUrl as string,
aspectRatio,
}),
);
};
},
};
render(h(CropperWrapper), container);
});
}
/**
* 带预览功能的上传组件
*/
const withPreviewUpload = () => {
return defineComponent({
name: Upload.name,
emits: ['update:modelValue'],
setup(
props: any,
{ attrs, slots, emit }: { attrs: any; emit: any; slots: any },
) {
const previewVisible = ref<boolean>(false);
const placeholder = attrs?.placeholder || $t('ui.placeholder.upload');
const listType = attrs?.listType || attrs?.['list-type'] || 'text';
const fileList = ref<UploadProps['fileList']>(
attrs?.fileList || attrs?.['file-list'] || [],
);
const maxSize = computed(() => attrs?.maxSize ?? attrs?.['max-size']);
const aspectRatio = computed(
() => attrs?.aspectRatio ?? attrs?.['aspect-ratio'],
);
const handleBeforeUpload = async (
file: UploadFile,
originFileList: Array<File>,
) => {
// 文件大小限制
if (maxSize.value && (file.size || 0) / 1024 / 1024 > maxSize.value) {
message.error($t('ui.formRules.sizeLimit', [maxSize.value]));
file.status = 'removed';
return false;
}
// 图片裁剪处理
if (
attrs.crop &&
!attrs.multiple &&
originFileList[0] &&
isImageFile(file)
) {
file.status = 'removed';
const blob = await cropImage(originFileList[0], aspectRatio.value);
if (!blob) {
throw new Error($t('ui.crop.errorTip'));
}
return blob;
}
return attrs.beforeUpload?.(file) ?? true;
};
const handleChange = (event: UploadChangeParam) => {
try {
attrs.handleChange?.(event);
attrs.onHandleChange?.(event);
} catch (error) {
console.error(error);
}
fileList.value = event.fileList.filter(
(file) => file.status !== 'removed',
);
emit(
'update:modelValue',
event.fileList?.length ? fileList.value : undefined,
);
};
const handlePreview = async (file: UploadFile) => {
previewVisible.value = true;
await previewImage(file, previewVisible, fileList);
};
const renderUploadButton = () => {
if (attrs.disabled) return null;
return isEmpty(slots)
? createDefaultUploadSlots(listType, placeholder)
: slots;
};
// 拖拽排序
const draggable = computed(
() => (attrs.draggable ?? false) && !attrs.disabled,
);
const uploadId = `upload-${Date.now()}-${Math.random().toString(36).slice(2, 9)}`;
const sortableInstance = ref<null | Sortable>(null);
const styleId = `upload-drag-style-${uploadId}`;
function injectDragStyle() {
if (!document.querySelector(`[id="${styleId}"]`)) {
const style = document.createElement('style');
style.id = styleId;
style.textContent = `
[data-upload-id="${uploadId}"] .ant-upload-list-item { cursor: move; }
[data-upload-id="${uploadId}"] .ant-upload-list-item:hover { box-shadow: 0 2px 8px rgba(0,0,0,0.15); }
`;
document.head.append(style);
}
}
function removeDragStyle() {
document.querySelector(`[id="${styleId}"]`)?.remove();
}
async function initSortable(retryCount = 0) {
if (!draggable.value) return;
injectDragStyle();
await nextTick();
await new Promise((resolve) => setTimeout(resolve, 100));
const container = document.querySelector(
`[data-upload-id="${uploadId}"] .ant-upload-list`,
) as HTMLElement;
if (!container) {
if (retryCount < 5) {
setTimeout(() => initSortable(retryCount + 1), 200);
}
return;
}
const { initializeSortable } = useSortable(container, {
animation: 300,
delay: 400,
delayOnTouchOnly: true,
filter:
'.ant-upload-select, .ant-upload-list-item-error, .ant-upload-list-item-uploading',
onEnd: (evt) => {
const { oldIndex, newIndex } = evt;
if (
oldIndex === undefined ||
newIndex === undefined ||
oldIndex === newIndex
) {
return;
}
const list = [...(fileList.value || [])];
const [movedItem] = list.splice(oldIndex, 1);
if (movedItem) {
list.splice(newIndex, 0, movedItem);
fileList.value = list;
}
attrs.onDragSort?.(oldIndex, newIndex);
emit('update:modelValue', fileList.value);
},
});
sortableInstance.value = await initializeSortable();
}
// 监听表单值变化
watch(
() => attrs.modelValue,
(res) => {
fileList.value = res;
},
);
onMounted(initSortable);
onUnmounted(() => {
sortableInstance.value?.destroy();
removeDragStyle();
});
return () =>
h(
'div',
{ 'data-upload-id': uploadId, class: 'w-full' },
h(
Upload,
{
...props,
...attrs,
fileList: fileList.value,
beforeUpload: handleBeforeUpload,
onChange: handleChange,
onPreview: handlePreview,
},
renderUploadButton() as any,
),
);
},
});
};
// 这里需要自行根据业务组件库进行适配,需要用到的组件都需要在这里类型说明
export type ComponentType =
| 'ApiCascader'
| 'ApiSelect'
| 'ApiTreeSelect'
| 'AutoComplete'
| 'Cascader'
| 'Checkbox'
| 'CheckboxGroup'
| 'DatePicker'
@@ -133,44 +630,73 @@ export type ComponentType =
| 'Switch'
| 'Textarea'
| 'TimePicker'
| 'TimeRangePicker'
| 'TreeSelect'
| 'Upload'
| BaseFormComponentType;
/**
* 与 {@link ComponentType} 中注册的组件名一一对应,便于 Schema 上 `component` + `componentProps` 联动提示
*/
export interface ComponentPropsMap {
ApiCascader: ApiComponentSharedProps & CascaderProps;
ApiSelect: ApiComponentSharedProps & SelectProps;
ApiTreeSelect: ApiComponentSharedProps & TreeSelectProps;
AutoComplete: AutoCompleteProps;
Cascader: CascaderProps;
Checkbox: CheckboxProps;
CheckboxGroup: CheckboxGroupProps;
DatePicker: DatePickerProps;
DefaultButton: ButtonProps;
Divider: DividerProps;
IconPicker: IconPickerProps;
Input: InputProps;
InputNumber: InputNumberProps;
InputPassword: InputProps;
Mentions: MentionsProps;
PrimaryButton: ButtonProps;
Radio: RadioProps;
RadioGroup: RadioGroupProps;
RangePicker: RangePickerProps;
Rate: RateProps;
Select: SelectProps;
Space: SpaceProps;
Switch: SwitchProps;
Textarea: TextAreaProps;
TimePicker: TimePickerProps;
TreeSelect: TreeSelectProps;
Upload: AdapterUploadProps;
}
async function initComponentAdapter() {
const components: Partial<Record<ComponentType, Component>> = {
// 如果你的组件体积比较大,可以使用异步加载
// Button: () =>
// import('xxx').then((res) => res.Button),
ApiSelect: withDefaultPlaceholder(
{
...ApiComponent,
name: 'ApiSelect',
},
'select',
{
component: Select,
loadingSlot: 'suffixIcon',
visibleEvent: 'onDropdownVisibleChange',
modelPropName: 'value',
},
),
ApiTreeSelect: withDefaultPlaceholder(
{
...ApiComponent,
name: 'ApiTreeSelect',
},
'select',
{
component: TreeSelect,
fieldNames: { label: 'label', value: 'value', children: 'children' },
loadingSlot: 'suffixIcon',
modelPropName: 'value',
optionsPropName: 'treeData',
visibleEvent: 'onVisibleChange',
},
),
ApiCascader: withDefaultPlaceholder(ApiComponent, 'select', {
component: Cascader,
fieldNames: { label: 'label', value: 'value', children: 'children' },
loadingSlot: 'suffixIcon',
modelPropName: 'value',
visibleEvent: 'onVisibleChange',
}),
ApiSelect: withDefaultPlaceholder(ApiComponent, 'select', {
component: Select,
loadingSlot: 'suffixIcon',
modelPropName: 'value',
visibleEvent: 'onVisibleChange',
}),
ApiTreeSelect: withDefaultPlaceholder(ApiComponent, 'select', {
component: TreeSelect,
fieldNames: { label: 'label', value: 'value', children: 'children' },
loadingSlot: 'suffixIcon',
modelPropName: 'value',
optionsPropName: 'treeData',
visibleEvent: 'onVisibleChange',
}),
AutoComplete,
Cascader,
Checkbox,
CheckboxGroup,
DatePicker,
@@ -202,8 +728,10 @@ async function initComponentAdapter() {
Textarea: withDefaultPlaceholder(Textarea, 'input'),
RichTextarea,
TimePicker,
TimeRangePicker,
TreeSelect: withDefaultPlaceholder(TreeSelect, 'select'),
Upload,
PreviewUpload: withPreviewUpload(),
FileUpload,
ImageUpload,
};

View File

@@ -1,15 +1,13 @@
import type {
VbenFormProps as FormProps,
VbenFormSchema as FormSchema,
VbenFormProps,
} from '@vben/common-ui';
import type { ComponentType } from './component';
import type { ComponentPropsMap, ComponentType } from './component';
import { setupVbenForm, useVbenForm as useForm, z } from '@vben/common-ui';
import { $t } from '@vben/locales';
/** 手机号正则表达式(中国) */
const MOBILE_REGEX = /(?:0|86|\+86)?1[3-9]\d{9}/;
import { isMobile } from '@vben/utils';
async function initSetupVbenForm() {
setupVbenForm<ComponentType>({
@@ -44,7 +42,7 @@ async function initSetupVbenForm() {
mobile: (value, _params, ctx) => {
if (value === undefined || value === null || value.length === 0) {
return true;
} else if (!MOBILE_REGEX.test(value)) {
} else if (!isMobile(value)) {
return $t('ui.formRules.mobile', [ctx.label]);
}
return true;
@@ -54,7 +52,7 @@ async function initSetupVbenForm() {
if (value === undefined || value === null || value.length === 0) {
return $t('ui.formRules.required', [ctx.label]);
}
if (!MOBILE_REGEX.test(value)) {
if (!isMobile(value)) {
return $t('ui.formRules.mobile', [ctx.label]);
}
return true;
@@ -63,9 +61,9 @@ async function initSetupVbenForm() {
});
}
const useVbenForm = useForm<ComponentType>;
const useVbenForm = useForm<ComponentType, ComponentPropsMap>;
export { initSetupVbenForm, useVbenForm, z };
export type VbenFormSchema = FormSchema<ComponentType>;
export type { VbenFormProps };
export type VbenFormSchema = FormSchema<ComponentType, ComponentPropsMap>;
export type VbenFormProps = FormProps<ComponentType, ComponentPropsMap>;

View File

@@ -1,79 +0,0 @@
/* 来自 @vben/plugins/vxe-table style.css覆盖 vxe-table 原有的样式定义,使用 vben 的样式主题 */
:root {
--vxe-ui-font-color: hsl(var(--foreground));
--vxe-ui-font-primary-color: hsl(var(--primary));
/* --vxe-ui-font-lighten-color: #babdc0;
--vxe-ui-font-darken-color: #86898e; */
--vxe-ui-font-disabled-color: hsl(var(--foreground) / 50%);
/* base */
--vxe-ui-base-popup-border-color: hsl(var(--border));
--vxe-ui-input-disabled-color: hsl(var(--border) / 60%);
/* --vxe-ui-base-popup-box-shadow: 0px 12px 30px 8px rgb(0 0 0 / 50%); */
/* layout */
--vxe-ui-layout-background-color: hsl(var(--background));
--vxe-ui-table-resizable-line-color: hsl(var(--heavy));
/* --vxe-ui-table-fixed-left-scrolling-box-shadow: 8px 0px 10px -5px hsl(var(--accent));
--vxe-ui-table-fixed-right-scrolling-box-shadow: -8px 0px 10px -5px hsl(var(--accent)); */
/* input */
--vxe-ui-input-border-color: hsl(var(--border));
/* --vxe-ui-input-placeholder-color: #8d9095; */
/* --vxe-ui-input-disabled-background-color: #262727; */
/* loading */
--vxe-ui-loading-background-color: hsl(var(--overlay-content));
/* table */
--vxe-ui-table-header-background-color: hsl(var(--accent));
--vxe-ui-table-border-color: hsl(var(--border));
--vxe-ui-table-row-hover-background-color: hsl(var(--accent-hover));
--vxe-ui-table-row-striped-background-color: hsl(var(--accent) / 60%);
--vxe-ui-table-row-hover-striped-background-color: hsl(var(--accent));
--vxe-ui-table-row-radio-checked-background-color: hsl(var(--accent));
--vxe-ui-table-row-hover-radio-checked-background-color: hsl(
var(--accent-hover)
);
--vxe-ui-table-row-checkbox-checked-background-color: hsl(var(--accent));
--vxe-ui-table-row-hover-checkbox-checked-background-color: hsl(
var(--accent-hover)
);
--vxe-ui-table-row-current-background-color: hsl(var(--accent));
--vxe-ui-table-row-hover-current-background-color: hsl(var(--accent-hover));
--vxe-ui-font-primary-tinge-color: hsl(var(--primary));
--vxe-ui-font-primary-lighten-color: hsl(var(--primary) / 60%);
--vxe-ui-font-primary-darken-color: hsl(var(--primary));
/* height: auto !important; */
/* --vxe-ui-table-fixed-scrolling-box-shadow-color: rgb(0 0 0 / 80%); */
}
.vxe-tools--operate {
margin-right: 0.25rem;
margin-left: 0.75rem;
}
.vxe-table-custom--checkbox-option:hover {
background: none !important;
}
.vxe-toolbar {
padding: 0;
}
.vxe-buttons--wrapper:not(:empty),
.vxe-tools--operate:not(:empty),
.vxe-tools--wrapper:not(:empty) {
padding: 0.6em 0;
}
.vxe-tools--operate:not(:has(button)) {
margin-left: 0;
}

View File

@@ -1,25 +1,43 @@
import type { VxeTableGridOptions } from '@vben/plugins/vxe-table';
import type { Recordable } from '@vben/types';
import type { ComponentPropsMap, ComponentType } from './component';
import { h } from 'vue';
import { IconifyIcon } from '@vben/icons';
import { $te } from '@vben/locales';
import {
AsyncComponents,
AsyncVxeColumn,
AsyncVxeTable,
createRequiredValidation,
setupVbenVxeTable,
useVbenVxeGrid,
useVbenVxeGrid as useGrid,
} from '@vben/plugins/vxe-table';
import { isFunction, isString } from '@vben/utils';
import {
erpCountInputFormatter,
erpNumberFormatter,
fenToYuan,
formatFileSize,
formatPast2,
isFunction,
isString,
} from '@vben/utils';
import { Button, Image, Popconfirm, Switch } from 'ant-design-vue';
import {
Button,
Image,
ImagePreviewGroup,
Popconfirm,
Switch,
Tag,
} from 'ant-design-vue';
import { DictTag } from '#/components/dict-tag';
import { $t } from '#/locales';
import { useVbenForm } from './form';
import '#/adapter/style.css';
setupVbenVxeTable({
configVxeTable: (vxeUI) => {
vxeUI.setConfig({
@@ -63,14 +81,29 @@ setupVbenVxeTable({
round: true,
showOverflow: true,
size: 'small',
},
} as VxeTableGridOptions,
});
// 表格配置项可以用 cellRender: { name: 'CellImage' },
vxeUI.renderer.add('CellImage', {
renderTableDefault(renderOpts, params) {
const { props } = renderOpts;
const { column, row } = params;
return h(Image, { src: row[column.field], ...props });
},
});
vxeUI.renderer.add('CellImages', {
renderTableDefault(_renderOpts, params) {
const { column, row } = params;
return h(Image, { src: row[column.field] });
if (column && column.field && row[column.field]) {
return h(ImagePreviewGroup, {}, () => {
return row[column.field].map((item: any) =>
h(Image, { src: item }),
);
});
}
return '';
},
});
@@ -86,6 +119,35 @@ setupVbenVxeTable({
},
});
// 表格配置项可以用 cellRender: { name: 'CellTag' },
vxeUI.renderer.add('CellTag', {
renderTableDefault(renderOpts, params) {
const { props } = renderOpts;
const { column, row } = params;
return h(Tag, { color: props?.color }, () => row[column.field]);
},
});
vxeUI.renderer.add('CellTags', {
renderTableDefault(renderOpts, params) {
const { props } = renderOpts;
const { column, row } = params;
if (!row[column.field] || row[column.field].length === 0) {
return '';
}
return h(
'div',
{ class: 'flex items-center justify-center' },
{
default: () =>
row[column.field].map((item: any) =>
h(Tag, { color: props?.color }, { default: () => item }),
),
},
);
},
});
// 表格配置项可以用 cellRender: { name: 'CellDict', props:{dictType: ''} },
vxeUI.renderer.add('CellDict', {
renderTableDefault(renderOpts, params) {
@@ -139,7 +201,7 @@ setupVbenVxeTable({
vxeUI.renderer.add('CellOperation', {
renderTableDefault({ attrs, options, props }, { column, row }) {
const defaultProps = { size: 'small', type: 'link', ...props };
let align = 'end';
let align: string;
switch (column.align) {
case 'center': {
align = 'center';
@@ -267,54 +329,49 @@ setupVbenVxeTable({
// 这里可以自行扩展 vxe-table 的全局配置,比如自定义格式化
// vxeUI.formats.add
// add by 星语:数量格式化,例如说:金额
vxeUI.formats.add('formatNumber', {
tableCellFormatMethod({ cellValue }, digits = 2) {
if (cellValue === null || cellValue === undefined) {
return '';
}
if (isString(cellValue)) {
cellValue = Number.parseFloat(cellValue);
}
// 如果非 number则直接返回空串
if (Number.isNaN(cellValue)) {
return '';
}
return cellValue.toFixed(digits);
vxeUI.formats.add('formatPast2', {
tableCellFormatMethod({ cellValue }) {
return formatPast2(cellValue);
},
});
vxeUI.formats.add('formatFraction', {
// add by 星语:数量格式化,保留 3 位
vxeUI.formats.add('formatAmount3', {
tableCellFormatMethod({ cellValue }) {
if (cellValue === null || cellValue === undefined) {
return '0.00';
}
if (isString(cellValue)) {
cellValue = Number.parseFloat(cellValue);
}
// 如果非 number则直接返回空串
if (Number.isNaN(cellValue)) {
return '0.00';
}
return `${(cellValue / 100).toFixed(2)}`;
return erpCountInputFormatter(cellValue);
},
});
// add by 星语:数量格式化,保留 2 位
vxeUI.formats.add('formatAmount2', {
tableCellFormatMethod({ cellValue }, digits = 2) {
return `${erpNumberFormatter(cellValue, digits)}`;
},
});
vxeUI.formats.add('formatFenToYuanAmount', {
tableCellFormatMethod({ cellValue }, digits = 2) {
return `${erpNumberFormatter(fenToYuan(cellValue), digits)}`;
},
});
// add by 星语:文件大小格式化
vxeUI.formats.add('formatFileSize', {
tableCellFormatMethod({ cellValue }, digits = 2) {
return formatFileSize(cellValue, digits);
},
});
},
useVbenForm,
});
export { useVbenVxeGrid };
export { createRequiredValidation };
const [VxeTable, VxeColumn, VxeToolbar] = AsyncComponents;
export { VxeColumn, VxeTable, VxeToolbar };
export const [VxeTable, VxeColumn] = [AsyncVxeTable, AsyncVxeColumn];
// add by 芋艿from https://github.com/vbenjs/vue-vben-admin/blob/main/playground/src/adapter/vxe-table.ts#L264-L270
export type OnActionClickParams<T = Recordable<any>> = {
code: string;
row: T;
};
export type OnActionClickFn<T = Recordable<any>> = (
params: OnActionClickParams<T>,
) => void;
export * from '#/components/table-action';
export const useVbenVxeGrid = <T extends Record<string, any>>(
...rest: Parameters<typeof useGrid<T, ComponentType, ComponentPropsMap>>
) => useGrid<T, ComponentType, ComponentPropsMap>(...rest);
export type * from '@vben/plugins/vxe-table';

View File

@@ -0,0 +1,74 @@
import type { PageResult } from '@vben/request';
import { requestClient } from '#/api/request';
export namespace AiChatConversationApi {
export interface ChatConversation {
id: number; // ID 编号
userId: number; // 用户编号
title: string; // 对话标题
pinned: boolean; // 是否置顶
roleId: number; // 角色编号
modelId: number; // 模型编号
model: string; // 模型标志
temperature: number; // 温度参数
maxTokens: number; // 单条回复的最大 Token 数量
maxContexts: number; // 上下文的最大 Message 数量
createTime?: Date; // 创建时间
systemMessage?: string; // 角色设定
modelName?: string; // 模型名字
roleAvatar?: string; // 角色头像
modelMaxTokens?: string; // 模型的单条回复的最大 Token 数量
modelMaxContexts?: string; // 模型的上下文的最大 Message 数量
}
}
/** 获得【我的】聊天对话 */
export function getChatConversationMy(id: number) {
return requestClient.get<AiChatConversationApi.ChatConversation>(
`/ai/chat/conversation/get-my?id=${id}`,
);
}
/** 新增【我的】聊天对话 */
export function createChatConversationMy(
data: AiChatConversationApi.ChatConversation,
) {
return requestClient.post('/ai/chat/conversation/create-my', data);
}
/** 更新【我的】聊天对话 */
export function updateChatConversationMy(
data: AiChatConversationApi.ChatConversation,
) {
return requestClient.put(`/ai/chat/conversation/update-my`, data);
}
/** 删除【我的】聊天对话 */
export function deleteChatConversationMy(id: number) {
return requestClient.delete(`/ai/chat/conversation/delete-my?id=${id}`);
}
/** 删除【我的】所有对话,置顶除外 */
export function deleteChatConversationMyByUnpinned() {
return requestClient.delete(`/ai/chat/conversation/delete-by-unpinned`);
}
/** 获得【我的】聊天对话列表 */
export function getChatConversationMyList() {
return requestClient.get<AiChatConversationApi.ChatConversation[]>(
`/ai/chat/conversation/my-list`,
);
}
/** 获得【我的】聊天对话列表 */
export function getChatConversationPage(params: any) {
return requestClient.get<
PageResult<AiChatConversationApi.ChatConversation[]>
>(`/ai/chat/conversation/page`, { params });
}
/** 管理员删除消息 */
export function deleteChatConversationByAdmin(id: number) {
return requestClient.delete(`/ai/chat/conversation/delete-by-admin?id=${id}`);
}

View File

@@ -0,0 +1,115 @@
import type { PageResult } from '@vben/request';
import { useAppConfig } from '@vben/hooks';
import { fetchEventSource } from '@vben/request';
import { useAccessStore } from '@vben/stores';
import { requestClient } from '#/api/request';
const { apiURL } = useAppConfig(import.meta.env, import.meta.env.PROD);
const accessStore = useAccessStore();
export namespace AiChatMessageApi {
export interface ChatMessage {
id: number; // 编号
conversationId: number; // 对话编号
type: string; // 消息类型
userId: string; // 用户编号
roleId: string; // 角色编号
model: number; // 模型标志
modelId: number; // 模型编号
content: string; // 聊天内容
reasoningContent?: string; // 推理内容(深度思考)
tokens: number; // 消耗 Token 数量
segmentIds?: number[]; // 段落编号
segments?: {
content: string; // 段落内容
documentId: number; // 文档编号
documentName: string; // 文档名称
id: number; // 段落编号
}[];
webSearchPages?: WebSearchPage[]; // 联网搜索结果
attachmentUrls?: string[]; // 附件 URL 数组
createTime: Date; // 创建时间
roleAvatar: string; // 角色头像
userAvatar: string; // 用户头像
}
/** 联网搜索页面接口 */
export interface WebSearchPage {
name: string; // 网站名称
icon: string; // 网站图标 URL
title: string; // 页面标题
url: string; // 页面 URL
snippet: string; // 简短描述
summary: string; // 内容摘要
}
}
/** 消息列表 */
export function getChatMessageListByConversationId(
conversationId: null | number,
) {
return requestClient.get<AiChatMessageApi.ChatMessage[]>(
`/ai/chat/message/list-by-conversation-id?conversationId=${conversationId}`,
);
}
/** 发送 Stream 消息 */
export function sendChatMessageStream(
conversationId: number,
content: string,
ctrl: any,
enableContext: boolean,
enableWebSearch: boolean,
onMessage: any,
onError: any,
onClose: any,
attachmentUrls?: string[],
) {
const token = accessStore.accessToken;
return fetchEventSource(`${apiURL}/ai/chat/message/send-stream`, {
method: 'post',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${token}`,
},
openWhenHidden: true,
body: JSON.stringify({
conversationId,
content,
useContext: enableContext,
useSearch: enableWebSearch,
attachmentUrls: attachmentUrls || [],
}),
onmessage: onMessage,
onerror: onError,
onclose: onClose,
signal: ctrl.signal,
});
}
/** 删除消息 */
export function deleteChatMessage(id: number) {
return requestClient.delete(`/ai/chat/message/delete?id=${id}`);
}
/** 删除指定对话的消息 */
export function deleteByConversationId(conversationId: number) {
return requestClient.delete(
`/ai/chat/message/delete-by-conversation-id?conversationId=${conversationId}`,
);
}
/** 获得消息分页 */
export function getChatMessagePage(params: any) {
return requestClient.get<PageResult<AiChatMessageApi.ChatMessage>>(
'/ai/chat/message/page',
{ params },
);
}
/** 管理员删除消息 */
export function deleteChatMessageByAdmin(id: number) {
return requestClient.delete(`/ai/chat/message/delete-by-admin?id=${id}`);
}

View File

@@ -0,0 +1,115 @@
import type { PageParam, PageResult } from '@vben/request';
import { requestClient } from '#/api/request';
export namespace AiImageApi {
/** 绘图 */
export interface Image {
id: number; // 编号
userId: number;
platform: string; // 平台
model: string; // 模型
prompt: string; // 提示词
width: number; // 图片宽度
height: number; // 图片高度
status: number; // 状态
publicStatus: boolean; // 公开状态
picUrl: string; // 任务地址
errorMessage: string; // 错误信息
options: any; // 配置 Map<string, string>
taskId: number; // 任务编号
buttons: ImageMidjourneyButtons[]; // mj 操作按钮
createTime: Date; // 创建时间
finishTime: Date; // 完成时间
}
export interface ImageMidjourneyButtons {
customId: string; // MJ::JOB::upsample::1::85a4b4c1-8835-46c5-a15c-aea34fad1862 动作标识
emoji: string; // 图标 emoji
label: string; // Make Variations 文本
style: number; // 样式: 2Primary、3Green
}
export interface ImageDrawReqVO {
prompt: string; // 提示词
modelId: number; // 模型
style: string; // 图像生成的风格
width: string; // 图片宽度
height: string; // 图片高度
options: object; // 绘制参数Map<String, String>
}
export interface ImageMidjourneyImagineReqVO {
prompt: string; // 提示词
modelId: number; // 模型
base64Array?: string[]; // size不能为空
width: string; // 图片宽度
height: string; // 图片高度
version: string; // 版本
}
export interface ImageMidjourneyAction {
id: number; // 图片编号
customId: string; // MJ::JOB::upsample::1::85a4b4c1-8835-46c5-a15c-aea34fad1862 动作标识
}
}
/** 获取【我的】绘图分页 */
export function getImagePageMy(params: PageParam) {
return requestClient.get<PageResult<AiImageApi.Image>>('/ai/image/my-page', {
params,
});
}
/** 获取【我的】绘图记录 */
export function getImageMy(id: number) {
return requestClient.get<AiImageApi.Image>(`/ai/image/get-my?id=${id}`);
}
/** 获取【我的】绘图记录列表 */
export function getImageListMyByIds(ids: number[]) {
return requestClient.get<AiImageApi.Image[]>(`/ai/image/my-list-by-ids`, {
params: { ids: ids.join(',') },
});
}
/** 生成图片 */
export function drawImage(data: AiImageApi.ImageDrawReqVO) {
return requestClient.post(`/ai/image/draw`, data);
}
/** 删除【我的】绘画记录 */
export function deleteImageMy(id: number) {
return requestClient.delete(`/ai/image/delete-my?id=${id}`);
}
/** ================ midjourney 专属 ================ */
/** 【Midjourney】生成图片 */
export function midjourneyImagine(
data: AiImageApi.ImageMidjourneyImagineReqVO,
) {
return requestClient.post(`/ai/image/midjourney/imagine`, data);
}
/** 【Midjourney】Action 操作(二次生成图片) */
export function midjourneyAction(data: AiImageApi.ImageMidjourneyAction) {
return requestClient.post(`/ai/image/midjourney/action`, data);
}
/** ================ 绘图管理 ================ */
/** 查询绘画分页 */
export function getImagePage(params: any) {
return requestClient.get<AiImageApi.Image[]>(`/ai/image/page`, { params });
}
/** 更新绘画发布状态 */
export function updateImage(data: any) {
return requestClient.put(`/ai/image/update`, data);
}
/** 删除绘画 */
export function deleteImage(id: number) {
return requestClient.delete(`/ai/image/delete?id=${id}`);
}

View File

@@ -0,0 +1,53 @@
import type { PageParam, PageResult } from '@vben/request';
import { requestClient } from '#/api/request';
export namespace AiKnowledgeDocumentApi {
export interface KnowledgeDocument {
id: number; // 编号
knowledgeId: number; // 知识库编号
name: string; // 文档名称
contentLength: number; // 字符数
tokens: number; // token 数
segmentMaxTokens: number; // 分片最大 token 数
retrievalCount: number; // 召回次数
status: number; // 是否启用
}
}
/** 查询知识库文档分页 */
export function getKnowledgeDocumentPage(params: PageParam) {
return requestClient.get<
PageResult<AiKnowledgeDocumentApi.KnowledgeDocument>
>('/ai/knowledge/document/page', { params });
}
/** 查询知识库文档详情 */
export function getKnowledgeDocument(id: number) {
return requestClient.get(`/ai/knowledge/document/get?id=${id}`);
}
/** 新增知识库文档(单个) */
export function createKnowledge(data: any) {
return requestClient.post('/ai/knowledge/document/create', data);
}
/** 新增知识库文档(多个) */
export function createKnowledgeDocumentList(data: any) {
return requestClient.post('/ai/knowledge/document/create-list', data);
}
/** 修改知识库文档 */
export function updateKnowledgeDocument(data: any) {
return requestClient.put('/ai/knowledge/document/update', data);
}
/** 修改知识库文档状态 */
export function updateKnowledgeDocumentStatus(data: any) {
return requestClient.put('/ai/knowledge/document/update-status', data);
}
/** 删除知识库文档 */
export function deleteKnowledgeDocument(id: number) {
return requestClient.delete(`/ai/knowledge/document/delete?id=${id}`);
}

Some files were not shown because too many files have changed in this diff Show More