feat:【ele】【crm】statistics 的部分(除 performance 外)

This commit is contained in:
YunaiV
2025-11-19 09:17:14 +08:00
parent 7baf8d7e06
commit 9dbfe579e2
20 changed files with 35 additions and 49 deletions

View File

@@ -66,7 +66,7 @@ export function useGridFormSchema(): VbenFormSchema[] {
defaultValue: [
formatDateTime(beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7))),
formatDateTime(endOfDay(new Date(Date.now() - 3600 * 1000 * 24))),
] as [Date, Date],
],
},
{
fieldName: 'interval',

View File

@@ -25,13 +25,11 @@ const { renderEcharts } = useEcharts(chartRef);
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -40,7 +40,7 @@ export function useGridFormSchema(): VbenFormSchema[] {
defaultValue: [
formatDateTime(beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7))),
formatDateTime(endOfDay(new Date(Date.now() - 3600 * 1000 * 24))),
] as [Date, Date],
],
},
{
fieldName: 'interval',

View File

@@ -42,13 +42,11 @@ const gridEvents: VxeGridListeners = {
};
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -31,17 +31,18 @@ export function useGridFormSchema(): VbenFormSchema[] {
fieldName: 'times',
label: '时间范围',
component: 'RangePicker',
// TODO @AI这里有问题只选择年份
componentProps: {
...getRangePickerDefaultProps(),
presets: {},
picker: 'year',
showTime: false,
format: 'YYYY',
ranges: {},
},
defaultValue: [
formatDateTime(beginOfDay(new Date(new Date().getFullYear(), 0, 1))),
formatDateTime(endOfDay(new Date(new Date().getFullYear(), 11, 31))),
] as [Date, Date],
],
},
{
fieldName: 'deptId',

View File

@@ -29,13 +29,11 @@ const { renderEcharts } = useEcharts(chartRef);
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -39,13 +39,11 @@ export function useGridFormSchema(): VbenFormSchema[] {
component: 'RangePicker',
componentProps: {
...getRangePickerDefaultProps(),
format: 'YYYY-MM-DD',
picker: 'year',
},
defaultValue: [
formatDateTime(beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7))),
formatDateTime(endOfDay(new Date(Date.now() - 3600 * 1000 * 24))),
] as [Date, Date],
],
},
{
fieldName: 'deptId',

View File

@@ -27,13 +27,11 @@ const { renderEcharts: renderRightEcharts } = useEcharts(rightChartRef);
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -57,7 +57,7 @@ export function useGridFormSchema(): VbenFormSchema[] {
defaultValue: [
formatDateTime(beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7))),
formatDateTime(endOfDay(new Date(Date.now() - 3600 * 1000 * 24))),
] as [Date, Date],
],
},
{
fieldName: 'deptId',

View File

@@ -25,13 +25,11 @@ const { renderEcharts } = useEcharts(chartRef);
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -8,6 +8,7 @@ import {
beginOfDay,
endOfDay,
erpCalculatePercentage,
formatDateTime,
handleTree,
} from '@vben/utils';
@@ -63,8 +64,8 @@ export function useGridFormSchema(): VbenFormSchema[] {
...getRangePickerDefaultProps(),
},
defaultValue: [
beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7)),
endOfDay(new Date(Date.now() - 3600 * 1000 * 24)),
formatDateTime(beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7))),
formatDateTime(endOfDay(new Date(Date.now() - 3600 * 1000 * 24))),
],
},
{

View File

@@ -9,7 +9,7 @@ import { onMounted, ref } from 'vue';
import { ContentWrap, Page } from '@vben/common-ui';
import { EchartsUI, useEcharts } from '@vben/plugins/echarts';
import { ElTabs, ElTabPane } from 'element-plus';
import { ElTabPane, ElTabs } from 'element-plus';
import { useVbenForm } from '#/adapter/form';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
@@ -25,13 +25,11 @@ const { renderEcharts } = useEcharts(chartRef);
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -4,7 +4,7 @@ import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { DICT_TYPE } from '@vben/constants';
import { getDictOptions } from '@vben/hooks';
import { useUserStore } from '@vben/stores';
import { beginOfDay, endOfDay, handleTree } from '@vben/utils';
import { beginOfDay, endOfDay, formatDateTime, handleTree } from '@vben/utils';
import { getSimpleDeptList } from '#/api/system/dept';
import { getSimpleUserList } from '#/api/system/user';
@@ -38,8 +38,8 @@ export function useGridFormSchema(): VbenFormSchema[] {
...getRangePickerDefaultProps(),
},
defaultValue: [
beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7)),
endOfDay(new Date(Date.now() - 3600 * 1000 * 24)),
formatDateTime(beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7))),
formatDateTime(endOfDay(new Date(Date.now() - 3600 * 1000 * 24))),
],
},
{

View File

@@ -12,7 +12,7 @@ import { reactive, ref } from 'vue';
import { ContentWrap, Page } from '@vben/common-ui';
import { EchartsUI, useEcharts } from '@vben/plugins/echarts';
import { ElButton, ElButtonGroup, ElTabs, ElTabPane } from 'element-plus';
import { ElButton, ElButtonGroup, ElTabPane, ElTabs } from 'element-plus';
import { useVbenForm } from '#/adapter/form';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
@@ -42,13 +42,11 @@ const gridEvents: VxeGridListeners = {
};
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -1,7 +1,7 @@
import type { VbenFormSchema } from '#/adapter/form';
import { useUserStore } from '@vben/stores';
import { beginOfDay, endOfDay, handleTree } from '@vben/utils';
import { beginOfDay, endOfDay, formatDate, handleTree } from '@vben/utils';
import { getSimpleDeptList } from '#/api/system/dept';
import { getSimpleUserList } from '#/api/system/user';
@@ -33,12 +33,20 @@ export function useGridFormSchema(): VbenFormSchema[] {
component: 'RangePicker',
componentProps: {
...getRangePickerDefaultProps(),
shortcuts: [],
// TODO @AI这里有问题只选择年份
type: 'year',
format: 'YYYY',
},
defaultValue: [
beginOfDay(new Date(new Date().getFullYear(), 0, 1)),
endOfDay(new Date(new Date().getFullYear(), 11, 31)),
formatDate(
beginOfDay(new Date(new Date().getFullYear(), 0, 1)),
'YYYY-MM-DD HH:mm:ss',
),
formatDate(
endOfDay(new Date(new Date().getFullYear(), 11, 31)),
'YYYY-MM-DD HH:mm:ss',
),
],
},
{

View File

@@ -9,7 +9,7 @@ import { onMounted, ref } from 'vue';
import { ContentWrap, Page } from '@vben/common-ui';
import { EchartsUI, useEcharts } from '@vben/plugins/echarts';
import { ElTabs, ElTabPane } from 'element-plus';
import { ElTabPane, ElTabs } from 'element-plus';
import { useVbenForm } from '#/adapter/form';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
@@ -29,13 +29,11 @@ const { renderEcharts } = useEcharts(chartRef);
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -3,7 +3,7 @@ import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { DICT_TYPE } from '@vben/constants';
import { useUserStore } from '@vben/stores';
import { beginOfDay, endOfDay, handleTree } from '@vben/utils';
import { beginOfDay, endOfDay, formatDateTime, handleTree } from '@vben/utils';
import { getSimpleDeptList } from '#/api/system/dept';
import { getSimpleUserList } from '#/api/system/user';
@@ -39,12 +39,10 @@ export function useGridFormSchema(): VbenFormSchema[] {
component: 'RangePicker',
componentProps: {
...getRangePickerDefaultProps(),
format: 'YYYY-MM-DD',
type: 'year',
},
defaultValue: [
beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7)),
endOfDay(new Date(Date.now() - 3600 * 1000 * 24)),
formatDateTime(beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7))),
formatDateTime(endOfDay(new Date(Date.now() - 3600 * 1000 * 24))),
],
},
{

View File

@@ -9,7 +9,7 @@ import { onMounted, ref } from 'vue';
import { ContentWrap, Page } from '@vben/common-ui';
import { EchartsUI, useEcharts } from '@vben/plugins/echarts';
import { ElTabs, ElTabPane } from 'element-plus';
import { ElTabPane, ElTabs } from 'element-plus';
import { useVbenForm } from '#/adapter/form';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
@@ -27,13 +27,11 @@ const { renderEcharts: renderRightEcharts } = useEcharts(rightChartRef);
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),

View File

@@ -2,7 +2,7 @@ import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { useUserStore } from '@vben/stores';
import { beginOfDay, endOfDay, handleTree } from '@vben/utils';
import { beginOfDay, endOfDay, formatDateTime, handleTree } from '@vben/utils';
import { getSimpleDeptList } from '#/api/system/dept';
import { getRangePickerDefaultProps } from '#/utils';
@@ -55,8 +55,8 @@ export function useGridFormSchema(): VbenFormSchema[] {
...getRangePickerDefaultProps(),
},
defaultValue: [
beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7)),
endOfDay(new Date(Date.now() - 3600 * 1000 * 24)),
formatDateTime(beginOfDay(new Date(Date.now() - 3600 * 1000 * 24 * 7))),
formatDateTime(endOfDay(new Date(Date.now() - 3600 * 1000 * 24))),
],
},
{

View File

@@ -9,7 +9,7 @@ import { onMounted, ref } from 'vue';
import { ContentWrap, Page } from '@vben/common-ui';
import { EchartsUI, useEcharts } from '@vben/plugins/echarts';
import { ElTabs, ElTabPane } from 'element-plus';
import { ElTabPane, ElTabs } from 'element-plus';
import { useVbenForm } from '#/adapter/form';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
@@ -25,13 +25,11 @@ const { renderEcharts } = useEcharts(chartRef);
const [QueryForm, formApi] = useVbenForm({
commonConfig: {
// 所有表单项
componentProps: {
class: 'w-full',
},
},
schema: useGridFormSchema(),
// 是否可展开
showCollapseButton: true,
submitButtonOptions: {
content: $t('common.query'),