fix(web-antdv-next): sync remaining upstream fixes
parent
f6a8c6e652
commit
03f167b7d0
|
|
@ -13,6 +13,7 @@ export namespace MemberUserApi {
|
|||
loginIp: string;
|
||||
mark: string;
|
||||
mobile: string;
|
||||
email?: string;
|
||||
name?: string;
|
||||
nickname?: string;
|
||||
registerIp: string;
|
||||
|
|
|
|||
|
|
@ -105,9 +105,7 @@ const [Grid, gridApi] = useVbenVxeGrid({
|
|||
|
||||
/** 解绑账号 */
|
||||
function onUnbind(row: SystemSocialUserApi.SocialUser) {
|
||||
confirm({
|
||||
content: `确定解绑[${getDictLabel(DICT_TYPE.SYSTEM_SOCIAL_TYPE, row.type)}]平台的[${row.openid}]账号吗?`,
|
||||
}).then(async () => {
|
||||
confirm(`确定解绑[${getDictLabel(DICT_TYPE.SYSTEM_SOCIAL_TYPE, row.type)}]平台的[${row.openid}]账号吗?`).then(async () => {
|
||||
await socialUnbind({ type: row.type, openid: row.openid });
|
||||
// 提示成功
|
||||
message.success($t('ui.actionMessage.operationSuccess'));
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'systemMessage',
|
||||
label: '角色设定',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
rows: 4,
|
||||
placeholder: '请输入角色设定',
|
||||
|
|
@ -41,6 +41,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '温度参数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入温度参数',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
|
|
@ -53,6 +54,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '回复数 Token 数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入回复数 Token 数',
|
||||
min: 0,
|
||||
max: 8192,
|
||||
|
|
@ -64,6 +66,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '上下文数量',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入上下文数量',
|
||||
min: 0,
|
||||
max: 20,
|
||||
|
|
|
|||
|
|
@ -39,9 +39,7 @@ async function handleUpdatePublicStatusChange(
|
|||
): Promise<boolean | undefined> {
|
||||
const text = newStatus ? '公开' : '私有';
|
||||
try {
|
||||
await confirm({
|
||||
content: `确认要将该图片切换为【${text}】吗?`,
|
||||
});
|
||||
await confirm(`确认要将该图片切换为【${text}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'description',
|
||||
label: '知识库描述',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
rows: 3,
|
||||
placeholder: '请输入知识库描述',
|
||||
|
|
@ -52,6 +52,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '检索 topK',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入检索 topK',
|
||||
min: 0,
|
||||
max: 10,
|
||||
|
|
@ -63,6 +64,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '检索相似度阈值',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入检索相似度阈值',
|
||||
min: 0,
|
||||
max: 1,
|
||||
|
|
|
|||
|
|
@ -77,9 +77,7 @@ async function handleStatusChange(
|
|||
row: AiKnowledgeDocumentApi.KnowledgeDocument,
|
||||
): Promise<boolean | undefined> {
|
||||
try {
|
||||
await confirm({
|
||||
content: `你要将${row.name}的状态切换为【${getDictLabel(DICT_TYPE.COMMON_STATUS, newStatus)}】吗?`,
|
||||
});
|
||||
await confirm(`你要将${row.name}的状态切换为【${getDictLabel(DICT_TYPE.COMMON_STATUS, newStatus)}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'description',
|
||||
label: '知识库描述',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
rows: 3,
|
||||
placeholder: '请输入知识库描述',
|
||||
|
|
@ -55,6 +55,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '检索 topK',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入检索 topK',
|
||||
min: 0,
|
||||
max: 10,
|
||||
|
|
@ -66,6 +67,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '检索相似度阈值',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入检索相似度阈值',
|
||||
min: 0,
|
||||
max: 1,
|
||||
|
|
|
|||
|
|
@ -65,9 +65,7 @@ async function handleStatusChange(
|
|||
row: AiKnowledgeSegmentApi.KnowledgeSegment,
|
||||
): Promise<boolean | undefined> {
|
||||
try {
|
||||
await confirm({
|
||||
content: `你要将片段 ${row.id} 的状态切换为【${getDictLabel(DICT_TYPE.COMMON_STATUS, newStatus)}】吗?`,
|
||||
});
|
||||
await confirm(`你要将片段 ${row.id} 的状态切换为【${getDictLabel(DICT_TYPE.COMMON_STATUS, newStatus)}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
},
|
||||
},
|
||||
{
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
fieldName: 'description',
|
||||
label: '角色描述',
|
||||
componentProps: {
|
||||
|
|
@ -88,7 +88,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'systemMessage',
|
||||
label: '角色设定',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入角色设定',
|
||||
},
|
||||
|
|
@ -154,6 +154,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '角色排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入角色排序',
|
||||
},
|
||||
dependencies: {
|
||||
|
|
|
|||
|
|
@ -84,6 +84,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '模型排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入模型排序',
|
||||
},
|
||||
rules: 'required',
|
||||
|
|
@ -104,6 +105,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '温度参数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入温度参数',
|
||||
min: 0,
|
||||
max: 2,
|
||||
|
|
@ -121,6 +123,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '回复数 Token 数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
max: 8192,
|
||||
placeholder: '请输入回复数 Token 数',
|
||||
|
|
@ -138,6 +141,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '上下文数量',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
max: 20,
|
||||
placeholder: '请输入上下文数量',
|
||||
|
|
|
|||
|
|
@ -39,9 +39,7 @@ async function handleUpdatePublicStatusChange(
|
|||
): Promise<boolean | undefined> {
|
||||
const text = newStatus ? '公开' : '私有';
|
||||
try {
|
||||
await confirm({
|
||||
content: `确认要将该音乐切换为【${text}】吗?`,
|
||||
});
|
||||
await confirm(`确认要将该音乐切换为【${text}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'description',
|
||||
label: '分类描述',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入分类描述',
|
||||
},
|
||||
|
|
@ -60,6 +60,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '分类排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入分类排序',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import { BpmProcessInstanceStatus, DICT_TYPE } from '@vben/constants';
|
|||
import { UndoOutlined, ZoomInOutlined, ZoomOutOutlined } from '@vben/icons';
|
||||
import { formatDate, formatPast2 } from '@vben/utils';
|
||||
|
||||
import { Button, Modal, Row, Space, Table } from 'antdv-next';
|
||||
import { Button, Modal, Row, Table } from 'antdv-next';
|
||||
import BpmnViewer from 'bpmn-js/lib/Viewer';
|
||||
import MoveCanvasModule from 'diagram-js/lib/navigation/movecanvas';
|
||||
|
||||
|
|
@ -13,6 +13,8 @@ import { DictTag } from '#/components/dict-tag';
|
|||
|
||||
import '../theme/index.scss';
|
||||
|
||||
const ButtonGroup = Button.Group;
|
||||
|
||||
const props = defineProps({
|
||||
xml: {
|
||||
type: String,
|
||||
|
|
@ -437,7 +439,7 @@ onBeforeUnmount(() => {
|
|||
<!-- Zoom:放大、缩小 -->
|
||||
<div style="position: absolute; top: 0; left: 0; width: 100%">
|
||||
<Row justify="end">
|
||||
<Space key="scale-control">
|
||||
<ButtonGroup key="scale-control">
|
||||
<Button
|
||||
:disabled="defaultZoom <= 0.3"
|
||||
:icon="h(ZoomOutOutlined)"
|
||||
|
|
@ -452,7 +454,7 @@ onBeforeUnmount(() => {
|
|||
@click="processZoomIn()"
|
||||
/>
|
||||
<Button :icon="h(UndoOutlined)" @click="processReZoom()" />
|
||||
</Space>
|
||||
</ButtonGroup>
|
||||
</Row>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -45,6 +45,7 @@ const [Grid] = useVbenVxeGrid({
|
|||
return await getCluePage({
|
||||
pageNo: page.currentPage,
|
||||
pageSize: page.pageSize,
|
||||
sceneType: 1,
|
||||
transformStatus: false,
|
||||
...formValues,
|
||||
});
|
||||
|
|
|
|||
|
|
@ -75,9 +75,7 @@ async function handleDeleteContactBusinessList() {
|
|||
return;
|
||||
}
|
||||
try {
|
||||
await confirm({
|
||||
content: `确定要将${checkedRows.value.map((item) => item.name).join(',')}解除关联吗?`,
|
||||
});
|
||||
await confirm(`确定要将${checkedRows.value.map((item) => item.name).join(',')}解除关联吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -118,6 +118,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '产品总金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
disabled: true,
|
||||
|
|
@ -130,6 +131,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '整单折扣(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
placeholder: '请输入整单折扣',
|
||||
|
|
@ -141,6 +143,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '折扣后金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
disabled: true,
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import { useRoute, useRouter } from 'vue-router';
|
|||
import { confirm, Page, useVbenModal } from '@vben/common-ui';
|
||||
import { useTabs } from '@vben/hooks';
|
||||
|
||||
import { Card, message, TabPane, Tabs } from 'antdv-next';
|
||||
import { Card, message, Tabs } from 'antdv-next';
|
||||
|
||||
import { getClue, transformClue } from '#/api/crm/clue';
|
||||
import { getOperateLogPage } from '#/api/crm/operateLog';
|
||||
|
|
@ -84,9 +84,7 @@ function handleTransfer() {
|
|||
/** 转化为客户 */
|
||||
async function handleTransform(): Promise<boolean | undefined> {
|
||||
try {
|
||||
await confirm({
|
||||
content: '确定将该线索转化为客户吗?',
|
||||
});
|
||||
await confirm('确定将该线索转化为客户吗?');
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -146,13 +144,13 @@ onMounted(() => {
|
|||
</Card>
|
||||
<Card class="mt-4 min-h-[60%]">
|
||||
<Tabs :tab-bar-gutter="16">
|
||||
<TabPane tab="跟进记录" key="1" :force-render="true">
|
||||
<Tabs.TabPane tab="跟进记录" key="1" :force-render="true">
|
||||
<FollowUp :biz-id="clueId" :biz-type="BizTypeEnum.CRM_CLUE" />
|
||||
</TabPane>
|
||||
<TabPane tab="基本信息" key="2" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="基本信息" key="2" :force-render="true">
|
||||
<Info :clue="clue" />
|
||||
</TabPane>
|
||||
<TabPane tab="团队成员" key="3" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="团队成员" key="3" :force-render="true">
|
||||
<PermissionList
|
||||
ref="permissionListRef"
|
||||
:biz-id="clueId"
|
||||
|
|
@ -160,10 +158,10 @@ onMounted(() => {
|
|||
:show-action="true"
|
||||
@quit-team="handleBack"
|
||||
/>
|
||||
</TabPane>
|
||||
<TabPane tab="操作日志" key="4" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="操作日志" key="4" :force-render="true">
|
||||
<OperateLog :log-list="logList" />
|
||||
</TabPane>
|
||||
</Tabs.TabPane>
|
||||
</Tabs>
|
||||
</Card>
|
||||
</Page>
|
||||
|
|
|
|||
|
|
@ -72,9 +72,7 @@ async function handleDeleteContactBusinessList() {
|
|||
return;
|
||||
}
|
||||
try {
|
||||
await confirm({
|
||||
content: `确定要将${checkedRows.value.map((item) => item.name).join(',')}解除关联吗?`,
|
||||
});
|
||||
await confirm(`确定要将${checkedRows.value.map((item) => item.name).join(',')}解除关联吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ export const schema: VbenFormSchema[] = [
|
|||
component: 'InputNumber',
|
||||
fieldName: 'notifyDays',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
},
|
||||
|
|
|
|||
|
|
@ -181,7 +181,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
rows: 4,
|
||||
|
|
@ -198,6 +198,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '产品总金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
placeholder: '请输入产品总金额',
|
||||
|
|
@ -209,6 +210,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '整单折扣(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
placeholder: '请输入整单折扣',
|
||||
|
|
@ -220,6 +222,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '折扣后金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
disabled: true,
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import { useRoute, useRouter } from 'vue-router';
|
|||
import { confirm, Page, useVbenModal } from '@vben/common-ui';
|
||||
import { useTabs } from '@vben/hooks';
|
||||
|
||||
import { Card, message, TabPane, Tabs } from 'antdv-next';
|
||||
import { Card, message, Tabs } from 'antdv-next';
|
||||
|
||||
import {
|
||||
getCustomer,
|
||||
|
|
@ -102,9 +102,7 @@ function handleTransfer() {
|
|||
/** 锁定客户 */
|
||||
async function handleLock(lockStatus: boolean): Promise<boolean | undefined> {
|
||||
try {
|
||||
await confirm({
|
||||
content: `确定锁定客户【${customer.value.name}】吗?`,
|
||||
});
|
||||
await confirm(`确定锁定客户【${customer.value.name}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -118,9 +116,7 @@ async function handleLock(lockStatus: boolean): Promise<boolean | undefined> {
|
|||
/** 领取客户 */
|
||||
async function handleReceive(): Promise<boolean | undefined> {
|
||||
try {
|
||||
await confirm({
|
||||
content: `确定领取客户【${customer.value.name}】吗?`,
|
||||
});
|
||||
await confirm(`确定领取客户【${customer.value.name}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -139,9 +135,7 @@ function handleDistributeForm() {
|
|||
/** 客户放入公海 */
|
||||
async function handlePutPool(): Promise<boolean | undefined> {
|
||||
try {
|
||||
await confirm({
|
||||
content: `确定将客户【${customer.value.name}】放入公海吗?`,
|
||||
});
|
||||
await confirm(`确定将客户【${customer.value.name}】放入公海吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -156,9 +150,7 @@ async function handlePutPool(): Promise<boolean | undefined> {
|
|||
async function handleUpdateDealStatus(): Promise<boolean | undefined> {
|
||||
const dealStatus = !customer.value.dealStatus;
|
||||
try {
|
||||
await confirm({
|
||||
content: `确定更新成交状态为【${dealStatus ? '已成交' : '未成交'}】吗?`,
|
||||
});
|
||||
await confirm(`确定更新成交状态为【${dealStatus ? '已成交' : '未成交'}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -250,20 +242,20 @@ onMounted(() => {
|
|||
</Card>
|
||||
<Card class="mt-4 min-h-[60%]">
|
||||
<Tabs>
|
||||
<TabPane tab="跟进记录" key="1" :force-render="true">
|
||||
<Tabs.TabPane tab="跟进记录" key="1" :force-render="true">
|
||||
<FollowUp :biz-id="customerId" :biz-type="BizTypeEnum.CRM_CUSTOMER" />
|
||||
</TabPane>
|
||||
<TabPane tab="基本信息" key="2" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="基本信息" key="2" :force-render="true">
|
||||
<Info :customer="customer" />
|
||||
</TabPane>
|
||||
<TabPane tab="联系人" key="3" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="联系人" key="3" :force-render="true">
|
||||
<ContactDetailsList
|
||||
:biz-id="customerId"
|
||||
:biz-type="BizTypeEnum.CRM_CUSTOMER"
|
||||
:customer-id="customerId"
|
||||
/>
|
||||
</TabPane>
|
||||
<TabPane tab="团队成员" key="4" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="团队成员" key="4" :force-render="true">
|
||||
<PermissionList
|
||||
ref="permissionListRef"
|
||||
:biz-id="customerId"
|
||||
|
|
@ -271,27 +263,27 @@ onMounted(() => {
|
|||
:show-action="true"
|
||||
@quit-team="handleBack"
|
||||
/>
|
||||
</TabPane>
|
||||
<TabPane tab="商机" key="5" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="商机" key="5" :force-render="true">
|
||||
<BusinessDetailsList
|
||||
:biz-id="customerId"
|
||||
:biz-type="BizTypeEnum.CRM_CUSTOMER"
|
||||
:customer-id="customerId"
|
||||
/>
|
||||
</TabPane>
|
||||
<TabPane tab="合同" key="6" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="合同" key="6" :force-render="true">
|
||||
<ContractDetailsList
|
||||
:biz-id="customerId"
|
||||
:biz-type="BizTypeEnum.CRM_CUSTOMER"
|
||||
/>
|
||||
</TabPane>
|
||||
<TabPane tab="回款" key="7" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="回款" key="7" :force-render="true">
|
||||
<ReceivablePlanDetailsList :customer-id="customerId" />
|
||||
<ReceivableDetailsList :customer-id="customerId" />
|
||||
</TabPane>
|
||||
<TabPane tab="操作日志" key="8" :force-render="true">
|
||||
</Tabs.TabPane>
|
||||
<Tabs.TabPane tab="操作日志" key="8" :force-render="true">
|
||||
<OperateLog :log-list="logList" />
|
||||
</TabPane>
|
||||
</Tabs.TabPane>
|
||||
</Tabs>
|
||||
</Card>
|
||||
</Page>
|
||||
|
|
|
|||
|
|
@ -65,6 +65,7 @@ export function useFormSchema(confType: LimitConfType): VbenFormSchema[] {
|
|||
: '锁定客户数上限',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: `请输入${
|
||||
LimitConfType.CUSTOMER_QUANTITY_LIMIT === confType
|
||||
? '拥有客户数上限'
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ export const schema: VbenFormSchema[] = [
|
|||
component: 'InputNumber',
|
||||
fieldName: 'contactExpireDays',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
},
|
||||
|
|
@ -35,6 +36,7 @@ export const schema: VbenFormSchema[] = [
|
|||
addonAfter: () => '天未成交',
|
||||
}),
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
},
|
||||
|
|
@ -63,6 +65,7 @@ export const schema: VbenFormSchema[] = [
|
|||
component: 'InputNumber',
|
||||
fieldName: 'notifyDays',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
},
|
||||
|
|
|
|||
|
|
@ -100,9 +100,7 @@ async function handleDelete() {
|
|||
return;
|
||||
}
|
||||
try {
|
||||
await confirm({
|
||||
content: `你要将${checkedRows.value.map((item) => item.nickname).join(',')}移出团队吗?`,
|
||||
});
|
||||
await confirm(`你要将${checkedRows.value.map((item) => item.nickname).join(',')}移出团队吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -100,7 +100,6 @@ const [Modal, modalApi] = useVbenModal({
|
|||
},
|
||||
async onOpenChange(isOpen: boolean) {
|
||||
if (!isOpen) {
|
||||
await formApi.resetForm();
|
||||
return;
|
||||
}
|
||||
// 加载数据
|
||||
|
|
|
|||
|
|
@ -92,6 +92,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '价格(元)',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
step: 0.1,
|
||||
|
|
@ -99,7 +100,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
},
|
||||
},
|
||||
{
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
fieldName: 'description',
|
||||
label: '产品描述',
|
||||
componentProps: {
|
||||
|
|
|
|||
|
|
@ -141,6 +141,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
component: 'InputNumber',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入回款金额',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
|
|
@ -161,7 +162,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
rows: 4,
|
||||
|
|
|
|||
|
|
@ -96,6 +96,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
component: 'InputNumber',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入计划回款金额',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
|
|
@ -119,6 +120,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '提前几天提醒',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入提前几天提醒',
|
||||
min: 0,
|
||||
},
|
||||
|
|
@ -135,7 +137,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
rows: 4,
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入排序',
|
||||
precision: 0,
|
||||
},
|
||||
|
|
@ -81,7 +82,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
rows: 3,
|
||||
|
|
|
|||
|
|
@ -67,9 +67,7 @@ async function handleDefaultStatusChange(
|
|||
): Promise<boolean | undefined> {
|
||||
const text = newStatus ? '设置' : '取消';
|
||||
try {
|
||||
await confirm({
|
||||
content: `确认要${text}"${row.name}"默认吗?`,
|
||||
});
|
||||
await confirm(`确认要${text}"${row.name}"默认吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
@ -132,6 +132,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '合计付款',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '合计付款',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -143,6 +144,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
disabled: formType === 'detail',
|
||||
placeholder: '请输入优惠金额',
|
||||
precision: 2,
|
||||
|
|
@ -154,6 +156,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '实际付款',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '实际付款',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
@ -132,6 +132,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '合计收款',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '合计收款',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -143,6 +144,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
disabled: formType === 'detail',
|
||||
placeholder: '请输入优惠金额',
|
||||
precision: 2,
|
||||
|
|
@ -154,6 +156,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '实际收款',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '实际收款',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
|
|||
|
|
@ -65,6 +65,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '显示顺序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入显示顺序',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -92,6 +92,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '保质期天数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入保质期天数',
|
||||
},
|
||||
},
|
||||
|
|
@ -100,6 +101,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '重量(kg)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入重量(kg)',
|
||||
},
|
||||
},
|
||||
|
|
@ -108,6 +110,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '采购价格',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入采购价格,单位:元',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
|
|
@ -119,6 +122,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '销售价格',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入销售价格,单位:元',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
|
|
@ -130,6 +134,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '最低价格',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入最低价格,单位:元',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
|
|
@ -139,7 +144,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
@ -120,6 +120,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠率(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入优惠率',
|
||||
min: 0,
|
||||
max: 100,
|
||||
|
|
@ -132,6 +133,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '付款优惠',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '付款优惠',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -143,6 +145,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠后金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '优惠后金额',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -163,6 +166,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '其他费用',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
disabled: formType === 'detail',
|
||||
placeholder: '请输入其他费用',
|
||||
precision: 2,
|
||||
|
|
@ -187,6 +191,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '应付金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
disabled: true,
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
@ -106,6 +106,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠率(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入优惠率',
|
||||
min: 0,
|
||||
max: 100,
|
||||
|
|
@ -118,6 +119,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '付款优惠',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '付款优惠',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -129,6 +131,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠后金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '优惠后金额',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -151,6 +154,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入支付订金',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
@ -120,6 +120,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠率(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入优惠率',
|
||||
min: 0,
|
||||
max: 100,
|
||||
|
|
@ -132,6 +133,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '退款优惠',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
disabled: true,
|
||||
|
|
@ -142,6 +144,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠后金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '优惠后金额',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -162,6 +165,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '其他费用',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
disabled: formType === 'detail',
|
||||
placeholder: '请输入其他费用',
|
||||
precision: 2,
|
||||
|
|
@ -186,6 +190,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '应退金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
disabled: true,
|
||||
|
|
|
|||
|
|
@ -82,6 +82,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入排序',
|
||||
},
|
||||
rules: 'required',
|
||||
|
|
@ -99,6 +100,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '税率(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入税率',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
|
|
@ -131,7 +133,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
rows: 3,
|
||||
|
|
|
|||
|
|
@ -82,6 +82,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入排序',
|
||||
precision: 0,
|
||||
},
|
||||
|
|
@ -100,6 +101,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '税率(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入税率',
|
||||
precision: 2,
|
||||
},
|
||||
|
|
@ -132,7 +134,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
rows: 3,
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
@ -119,6 +119,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠率(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入优惠率',
|
||||
min: 0,
|
||||
max: 100,
|
||||
|
|
@ -131,6 +132,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '付款优惠',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '收款优惠',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -142,6 +144,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠后金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '优惠后金额',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -164,6 +167,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入收取订金',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
|
|
|
|||
|
|
@ -95,7 +95,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
@ -137,6 +137,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠率(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入优惠率',
|
||||
min: 0,
|
||||
max: 100,
|
||||
|
|
@ -149,6 +150,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '收款优惠',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '付款优惠',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -160,6 +162,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠后金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '优惠后金额',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -180,6 +183,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '其他费用',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
disabled: formType === 'detail',
|
||||
placeholder: '请输入其他费用',
|
||||
precision: 2,
|
||||
|
|
@ -207,6 +211,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '应收金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
disabled: true,
|
||||
|
|
|
|||
|
|
@ -91,7 +91,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
@ -133,6 +133,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠率(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入优惠率',
|
||||
min: 0,
|
||||
max: 100,
|
||||
|
|
@ -145,6 +146,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '退款优惠',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
disabled: true,
|
||||
|
|
@ -155,6 +157,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '优惠后金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '优惠后金额',
|
||||
precision: 2,
|
||||
formatter: erpPriceInputFormatter,
|
||||
|
|
@ -175,6 +178,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '其他费用',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
disabled: formType === 'detail',
|
||||
placeholder: '请输入其他费用',
|
||||
precision: 2,
|
||||
|
|
@ -200,6 +204,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
label: '应收金额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
precision: 2,
|
||||
min: 0,
|
||||
disabled: true,
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ export function useFormSchema(formType: FormType): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
autoSize: { minRows: 1, maxRows: 1 },
|
||||
|
|
|
|||
|
|
@ -51,6 +51,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '仓储费(元)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入仓储费,单位:元/天/KG',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
|
|
@ -61,6 +62,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '搬运费(元)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入搬运费,单位:元',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
|
|
@ -79,6 +81,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入排序',
|
||||
precision: 0,
|
||||
},
|
||||
|
|
@ -87,7 +90,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -65,9 +65,7 @@ async function handleDefaultStatusChange(
|
|||
): Promise<boolean | undefined> {
|
||||
const text = newStatus ? '设置' : '取消';
|
||||
try {
|
||||
await confirm({
|
||||
content: `确认要${text}"${row.name}"默认吗?`,
|
||||
});
|
||||
await confirm(`确认要${text}"${row.name}"默认吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -42,9 +42,7 @@ function handleDetail(row: InfraApiErrorLogApi.ApiErrorLog) {
|
|||
|
||||
/** 处理已处理 / 已忽略的操作 */
|
||||
async function handleProcess(id: number, processStatus: number) {
|
||||
await confirm({
|
||||
content: `确认标记为${InfraApiErrorLogProcessStatusEnum.DONE ? '已处理' : '已忽略'}?`,
|
||||
});
|
||||
await confirm(`确认标记为${InfraApiErrorLogProcessStatusEnum.DONE ? '已处理' : '已忽略'}?`);
|
||||
const hideLoading = message.loading({
|
||||
content: '正在处理中...',
|
||||
duration: 0,
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
},
|
||||
|
|
@ -82,6 +82,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '主机端口',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入主机端口',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import { DICT_TYPE } from '@vben/constants';
|
|||
import { getDictOptions } from '@vben/hooks';
|
||||
import { formatDateTime } from '@vben/utils';
|
||||
|
||||
import { Timeline, TimelineItem } from 'antdv-next';
|
||||
import { Timeline } from 'antdv-next';
|
||||
|
||||
import { CronTab } from '#/components/cron-tab';
|
||||
import { DictTag } from '#/components/dict-tag';
|
||||
|
|
@ -68,6 +68,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '重试次数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入重试次数。设置为 0 时,不进行重试',
|
||||
min: 0,
|
||||
},
|
||||
|
|
@ -78,6 +79,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '重试间隔',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入重试间隔,单位:毫秒。设置为 0 时,无需间隔',
|
||||
min: 0,
|
||||
},
|
||||
|
|
@ -88,6 +90,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '监控超时时间',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入监控超时时间,单位:毫秒',
|
||||
min: 0,
|
||||
},
|
||||
|
|
@ -236,7 +239,7 @@ export function useDetailSchema(): DescriptionItemSchema[] {
|
|||
}
|
||||
return h(Timeline, {}, () =>
|
||||
val?.map((time: Date) =>
|
||||
h(TimelineItem, {}, () => formatDateTime(time)),
|
||||
h(Timeline.Item, {}, () => formatDateTime(time)),
|
||||
),
|
||||
);
|
||||
},
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '品牌排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入品牌排序',
|
||||
},
|
||||
|
|
@ -60,7 +61,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'description',
|
||||
label: '品牌描述',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入品牌描述',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -65,6 +65,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '分类排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入分类排序',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -65,9 +65,7 @@ async function handleStatusChange(
|
|||
): Promise<boolean | undefined> {
|
||||
const text = newStatus ? '展示' : '隐藏';
|
||||
try {
|
||||
await confirm({
|
||||
content: `确认要${text}该评论吗?`,
|
||||
});
|
||||
await confirm(`确认要${text}该评论吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ export function useInfoFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'introduction',
|
||||
label: '商品简介',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入商品简介',
|
||||
autoSize: { minRows: 2, maxRows: 2 },
|
||||
|
|
@ -281,6 +281,7 @@ export function useOtherFormSchema(): VbenFormSchema[] {
|
|||
label: '商品排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
},
|
||||
rules: 'required',
|
||||
|
|
@ -290,6 +291,7 @@ export function useOtherFormSchema(): VbenFormSchema[] {
|
|||
label: '赠送积分',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
},
|
||||
rules: 'required',
|
||||
|
|
@ -299,6 +301,7 @@ export function useOtherFormSchema(): VbenFormSchema[] {
|
|||
label: '虚拟销量',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
},
|
||||
rules: 'required',
|
||||
|
|
|
|||
|
|
@ -134,7 +134,6 @@ const [Modal, modalApi] = useVbenModal({
|
|||
if (!isOpen) {
|
||||
return;
|
||||
}
|
||||
await formApi.resetForm();
|
||||
},
|
||||
});
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import { confirm, DocAlert, Page } from '@vben/common-ui';
|
|||
import { ProductSpuStatusEnum } from '@vben/constants';
|
||||
import { downloadFileFromBlobPart } from '@vben/utils';
|
||||
|
||||
import { message, TabPane, Tabs } from 'antdv-next';
|
||||
import { message, Tabs } from 'antdv-next';
|
||||
|
||||
import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
|
@ -110,9 +110,7 @@ async function handleStatusChange(
|
|||
// 二次确认
|
||||
const text = newStatus ? '上架' : '下架';
|
||||
try {
|
||||
await confirm({
|
||||
content: `确认要${text + row.name}吗?`,
|
||||
});
|
||||
await confirm(`确认要${text + row.name}吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -132,9 +130,7 @@ async function handleStatus02Change(row: MallSpuApi.Spu, newStatus: number) {
|
|||
newStatus === ProductSpuStatusEnum.RECYCLE.status
|
||||
? '加入到回收站'
|
||||
: '恢复到仓库';
|
||||
await confirm({
|
||||
content: `确认要"${row.name}"${text}吗?`,
|
||||
});
|
||||
await confirm(`确认要"${row.name}"${text}吗?`);
|
||||
const hideLoading = message.loading({
|
||||
content: `正在${text}中...`,
|
||||
duration: 0,
|
||||
|
|
@ -213,7 +209,7 @@ onMounted(async () => {
|
|||
<Grid>
|
||||
<template #toolbar-actions>
|
||||
<Tabs @change="onChangeTab" class="w-full">
|
||||
<TabPane
|
||||
<Tabs.TabPane
|
||||
v-for="item in tabsData"
|
||||
:key="item.type"
|
||||
:tab="`${item.name} (${item.count})`"
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '显示顺序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入显示顺序',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -106,6 +106,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入排序',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -62,6 +62,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入排序',
|
||||
},
|
||||
|
|
@ -81,7 +82,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'memo',
|
||||
label: '描述',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
rows: 4,
|
||||
placeholder: '请输入描述',
|
||||
|
|
|
|||
|
|
@ -55,6 +55,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '助力人数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 1,
|
||||
placeholder: '达到该人数才能砍到低价',
|
||||
},
|
||||
|
|
@ -65,6 +66,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '砍价次数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 1,
|
||||
placeholder: '最大帮砍次数',
|
||||
},
|
||||
|
|
@ -75,6 +77,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '购买限制',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 1,
|
||||
placeholder: '最大购买次数',
|
||||
},
|
||||
|
|
@ -85,6 +88,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '最小砍价金额(元)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
step: 0.01,
|
||||
|
|
@ -96,6 +100,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '最大砍价金额(元)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
step: 0.01,
|
||||
|
|
|
|||
|
|
@ -55,6 +55,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '拼团人数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '达到该人数即成团',
|
||||
min: 2,
|
||||
},
|
||||
|
|
@ -65,6 +66,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '限制时长',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '限制时长(小时)',
|
||||
min: 0,
|
||||
},
|
||||
|
|
@ -75,6 +77,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '总限购数量',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入总限购数量',
|
||||
min: 0,
|
||||
},
|
||||
|
|
@ -84,6 +87,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '单次限购数量',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入单次限购数量',
|
||||
min: 0,
|
||||
},
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'description',
|
||||
label: '优惠券描述',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入优惠券描述',
|
||||
},
|
||||
|
|
@ -122,6 +122,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '优惠券面额',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
placeholder: '请输入优惠金额,单位:元',
|
||||
|
|
@ -139,6 +140,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '优惠券折扣',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 1,
|
||||
max: 9.9,
|
||||
precision: 1,
|
||||
|
|
@ -157,6 +159,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '最多优惠',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
placeholder: '请输入最多优惠',
|
||||
|
|
@ -174,6 +177,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '满多少元可以使用',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
placeholder: '无门槛请设为 0',
|
||||
|
|
@ -196,6 +200,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '发放数量',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: -1,
|
||||
placeholder: '发放数量,没有之后不能领取或发放,-1 为不限制',
|
||||
addonAfter: '张',
|
||||
|
|
@ -212,6 +217,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '每人限领个数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: -1,
|
||||
placeholder: '设置为 -1 时,可无限领取',
|
||||
addonAfter: '张',
|
||||
|
|
@ -255,6 +261,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '领取日期',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '第 0 为今天生效',
|
||||
addonBefore: '第',
|
||||
|
|
@ -271,6 +278,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
fieldName: 'fixedEndTerm',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入结束天数',
|
||||
addonBefore: '至',
|
||||
|
|
|
|||
|
|
@ -61,9 +61,7 @@ async function handleStatusChange(
|
|||
row: MallCouponTemplateApi.CouponTemplate,
|
||||
): Promise<boolean | undefined> {
|
||||
try {
|
||||
await confirm({
|
||||
content: `你要将${row.name}的状态切换为【${newStatus === CommonStatusEnum.ENABLE ? '启用' : '停用'}】吗?`,
|
||||
});
|
||||
await confirm(`你要将${row.name}的状态切换为【${newStatus === CommonStatusEnum.ENABLE ? '启用' : '停用'}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import type {
|
|||
SpuProperty,
|
||||
} from '#/views/mall/product/spu/components';
|
||||
|
||||
import { computed, nextTick, ref } from 'vue';
|
||||
import { computed, ref } from 'vue';
|
||||
|
||||
import { useVbenForm, useVbenModal } from '@vben/common-ui';
|
||||
import { PromotionDiscountTypeEnum } from '@vben/constants';
|
||||
|
|
@ -213,13 +213,11 @@ function handleSkuDiscountPercentChange(row: SkuExtension) {
|
|||
}
|
||||
|
||||
/** 重置表单 */
|
||||
async function resetForm() {
|
||||
function resetForm() {
|
||||
spuList.value = [];
|
||||
spuPropertyList.value = [];
|
||||
spuIdList.value = [];
|
||||
formData.value = {};
|
||||
await nextTick();
|
||||
await formApi.resetForm();
|
||||
}
|
||||
|
||||
// ================= 弹窗相关 =================
|
||||
|
|
@ -264,7 +262,7 @@ const [Modal, modalApi] = useVbenModal({
|
|||
},
|
||||
async onOpenChange(isOpen: boolean) {
|
||||
if (!isOpen) {
|
||||
await resetForm();
|
||||
resetForm();
|
||||
return;
|
||||
}
|
||||
// 加载数据
|
||||
|
|
|
|||
|
|
@ -125,9 +125,7 @@ async function updateConversationPinnedFn(pinned: boolean) {
|
|||
/** 删除会话 */
|
||||
async function deleteConversationFn() {
|
||||
// 1. 删除会话
|
||||
confirm({
|
||||
content: '您确定要删除该会话吗?',
|
||||
}).then(async () => {
|
||||
confirm('您确定要删除该会话吗?').then(async () => {
|
||||
await deleteConversation(rightClickConversation.value.id);
|
||||
// 2. 关闭右键菜单,更新会话列表
|
||||
closeRightMenu();
|
||||
|
|
|
|||
|
|
@ -169,7 +169,7 @@ async function handleSendMessage(event: any) {
|
|||
}
|
||||
// 1. 校验消息是否为空
|
||||
if (isEmpty(unref(message.value)?.trim())) {
|
||||
notification.warning({ title: '请输入消息后再发送哦!' });
|
||||
notification.warning({ message: '请输入消息后再发送哦!' });
|
||||
message.value = '';
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -109,9 +109,9 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入排序',
|
||||
class: '!w-full',
|
||||
},
|
||||
defaultValue: 0,
|
||||
rules: 'required',
|
||||
|
|
@ -119,7 +119,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
rows: 4,
|
||||
|
|
|
|||
|
|
@ -99,9 +99,9 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '总限购数量',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入总限购数量',
|
||||
min: 0,
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: z.number().min(0).default(0),
|
||||
},
|
||||
|
|
@ -110,9 +110,9 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '单次限购数量',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入单次限购数量',
|
||||
min: 0,
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: z.number().min(0).default(0),
|
||||
},
|
||||
|
|
@ -121,16 +121,16 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入排序',
|
||||
min: 0,
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: z.number().min(0).default(0),
|
||||
},
|
||||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
rows: 4,
|
||||
|
|
|
|||
|
|
@ -62,9 +62,7 @@ async function handleStatusChange(
|
|||
// 二次确认
|
||||
const text = row.status === 0 ? '启用' : '停用';
|
||||
try {
|
||||
await confirm({
|
||||
content: `确认要${text + row.name}吗?`,
|
||||
});
|
||||
await confirm(`确认要${text + row.name}吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -104,9 +104,7 @@ async function loadProductStatisticsList() {
|
|||
async function handleExport() {
|
||||
try {
|
||||
// 导出的二次确认
|
||||
await confirm({
|
||||
content: '确认导出商品状况数据吗?',
|
||||
});
|
||||
await confirm('确认导出商品状况数据吗?');
|
||||
// 发起导出
|
||||
exportLoading.value = true;
|
||||
const data = await exportProductStatisticsExcel({
|
||||
|
|
@ -121,7 +119,7 @@ async function handleExport() {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<Card variant="borderless" title="商品概况" class="h-full">
|
||||
<Card :bordered="false" title="商品概况" class="h-full">
|
||||
<template #extra>
|
||||
<!-- 查询条件 -->
|
||||
<div class="flex items-center gap-2">
|
||||
|
|
|
|||
|
|
@ -107,9 +107,7 @@ async function loadTradeStatisticsList() {
|
|||
async function handleExport() {
|
||||
try {
|
||||
// 导出的二次确认
|
||||
await confirm({
|
||||
content: '确认导出交易状况数据吗?',
|
||||
});
|
||||
await confirm('确认导出交易状况数据吗?');
|
||||
// 发起导出
|
||||
exportLoading.value = true;
|
||||
const data = await exportTradeStatisticsExcel({
|
||||
|
|
@ -124,7 +122,7 @@ async function handleExport() {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<Card variant="borderless" title="交易状况" class="h-full">
|
||||
<Card :bordered="false" title="交易状况" class="h-full">
|
||||
<template #extra>
|
||||
<!-- 查询条件 -->
|
||||
<div class="flex items-center gap-2">
|
||||
|
|
|
|||
|
|
@ -89,9 +89,7 @@ async function handleBrokerageEnabledChange(
|
|||
): Promise<boolean | undefined> {
|
||||
const text = newEnabled ? '开通' : '关闭';
|
||||
try {
|
||||
await confirm({
|
||||
content: `你要将${row.nickname}的推广资格切换为【${text}】吗?`,
|
||||
});
|
||||
await confirm(`你要将${row.nickname}的推广资格切换为【${text}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -63,10 +63,10 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '满额包邮',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
placeholder: '请输入满额包邮金额',
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: 'required',
|
||||
dependencies: {
|
||||
|
|
@ -145,10 +145,10 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '一级返佣比例(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
max: 100,
|
||||
placeholder: '请输入一级返佣比例',
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: 'required',
|
||||
dependencies: {
|
||||
|
|
@ -162,10 +162,10 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '二级返佣比例(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
max: 100,
|
||||
placeholder: '请输入二级返佣比例',
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: 'required',
|
||||
dependencies: {
|
||||
|
|
@ -179,9 +179,9 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '佣金冻结天数',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入佣金冻结天数',
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: 'required',
|
||||
dependencies: {
|
||||
|
|
@ -195,10 +195,10 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '提现最低金额(元)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
placeholder: '请输入提现最低金额',
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: 'required',
|
||||
dependencies: {
|
||||
|
|
@ -212,11 +212,11 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '提现手续费(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
max: 100,
|
||||
precision: 2,
|
||||
placeholder: '请输入提现手续费百分比',
|
||||
class: 'w-full',
|
||||
},
|
||||
rules: 'required',
|
||||
dependencies: {
|
||||
|
|
|
|||
|
|
@ -47,6 +47,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '显示顺序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入显示顺序',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -140,6 +140,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '显示顺序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入显示顺序',
|
||||
min: 0,
|
||||
},
|
||||
|
|
|
|||
|
|
@ -306,6 +306,7 @@ export function usePriceFormSchema(): VbenFormSchema[] {
|
|||
label: '订单调价',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入订单调价',
|
||||
step: 0.1,
|
||||
precision: 2,
|
||||
|
|
|
|||
|
|
@ -21,9 +21,9 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '积分抵扣',
|
||||
help: '积分抵用比例(1 积分抵多少金额),单位:元',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
class: 'w-full',
|
||||
placeholder: '请输入积分抵扣单价',
|
||||
},
|
||||
},
|
||||
|
|
@ -33,8 +33,8 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '积分抵扣最大值',
|
||||
help: '单次下单积分使用上限,0 不限制',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
class: 'w-full',
|
||||
placeholder: '请输入积分抵扣最大值',
|
||||
},
|
||||
},
|
||||
|
|
@ -44,8 +44,8 @@ export const schema: VbenFormSchema[] = [
|
|||
label: '1 元赠送多少分',
|
||||
help: '下单支付金额按比例赠送积分(实际支付 1 元赠送多少积分)',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
class: 'w-full',
|
||||
placeholder: '请输入赠送积分比例',
|
||||
},
|
||||
},
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '等级',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
placeholder: '请输入等级',
|
||||
|
|
@ -43,6 +44,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '升级经验',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
placeholder: '请输入升级经验',
|
||||
|
|
@ -54,6 +56,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '享受折扣(%)',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
max: 100,
|
||||
precision: 0,
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '签到天数',
|
||||
help: '只允许设置 1-7,默认签到 7 天为一个周期',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 1,
|
||||
max: 7,
|
||||
precision: 0,
|
||||
|
|
@ -35,6 +36,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
fieldName: 'point',
|
||||
label: '获得积分',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
placeholder: '请输入获得积分',
|
||||
|
|
@ -46,6 +48,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
fieldName: 'experience',
|
||||
label: '奖励经验',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
placeholder: '请输入奖励经验',
|
||||
|
|
|
|||
|
|
@ -36,6 +36,17 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
},
|
||||
rules: 'required',
|
||||
},
|
||||
{
|
||||
fieldName: 'email',
|
||||
label: '邮箱',
|
||||
component: 'Input',
|
||||
componentProps: {
|
||||
allowClear: true,
|
||||
maxlength: 50,
|
||||
placeholder: '请输入邮箱',
|
||||
},
|
||||
rules: z.string().email('邮箱格式不正确').or(z.literal('')).optional(),
|
||||
},
|
||||
{
|
||||
fieldName: 'status',
|
||||
label: '状态',
|
||||
|
|
@ -124,7 +135,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'mark',
|
||||
label: '会员备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入会员备注',
|
||||
},
|
||||
|
|
@ -153,6 +164,15 @@ export function useGridFormSchema(): VbenFormSchema[] {
|
|||
allowClear: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
fieldName: 'email',
|
||||
label: '邮箱',
|
||||
component: 'Input',
|
||||
componentProps: {
|
||||
placeholder: '请输入邮箱',
|
||||
allowClear: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
fieldName: 'loginDate',
|
||||
label: '登录时间',
|
||||
|
|
@ -236,6 +256,11 @@ export function useGridColumns(): VxeTableGridOptions['columns'] {
|
|||
title: '手机号',
|
||||
minWidth: 120,
|
||||
},
|
||||
{
|
||||
field: 'email',
|
||||
title: '邮箱',
|
||||
minWidth: 180,
|
||||
},
|
||||
{
|
||||
field: 'nickname',
|
||||
title: '昵称',
|
||||
|
|
@ -340,7 +365,7 @@ export function useLevelFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'reason',
|
||||
label: '修改原因',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入修改原因',
|
||||
},
|
||||
|
|
@ -396,6 +421,7 @@ export function useBalanceFormSchema(): VbenFormSchema[] {
|
|||
component: 'InputNumber',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
step: 0.1,
|
||||
|
|
@ -471,6 +497,7 @@ export function usePointFormSchema(): VbenFormSchema[] {
|
|||
component: 'InputNumber',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 0,
|
||||
placeholder: '请输入变动积分',
|
||||
|
|
|
|||
|
|
@ -34,6 +34,10 @@ const [Descriptions] = useDescription({
|
|||
field: 'mobile',
|
||||
label: '手机号',
|
||||
},
|
||||
{
|
||||
field: 'email',
|
||||
label: '邮箱',
|
||||
},
|
||||
{
|
||||
field: 'sex',
|
||||
label: '性别',
|
||||
|
|
|
|||
|
|
@ -247,7 +247,7 @@ export function useAppFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
rows: 3,
|
||||
placeholder: '请输入备注',
|
||||
|
|
@ -291,6 +291,7 @@ export function useChannelFormSchema(formType: string = ''): VbenFormSchema[] {
|
|||
component: 'InputNumber',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入渠道费率',
|
||||
addonAfter: '%',
|
||||
},
|
||||
|
|
@ -381,7 +382,7 @@ export function useChannelFormSchema(formType: string = ''): VbenFormSchema[] {
|
|||
{
|
||||
label: '应用私钥',
|
||||
fieldName: 'config.privateKey',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
placeholder: '请输入应用私钥',
|
||||
|
|
@ -391,7 +392,7 @@ export function useChannelFormSchema(formType: string = ''): VbenFormSchema[] {
|
|||
{
|
||||
label: '支付宝公钥',
|
||||
fieldName: 'config.alipayPublicKey',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
placeholder: '请输入支付宝公钥',
|
||||
|
|
|
|||
|
|
@ -67,9 +67,7 @@ async function handleStatusChange(
|
|||
): Promise<boolean | undefined> {
|
||||
const text = newStatus === CommonStatusEnum.ENABLE ? '启用' : '停用';
|
||||
try {
|
||||
await confirm({
|
||||
content: `确认要${text + row.name}应用吗?`,
|
||||
});
|
||||
await confirm(`确认要${text + row.name}应用吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
component: 'InputNumber',
|
||||
rules: 'required',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 1,
|
||||
precision: 2,
|
||||
step: 0.01,
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
component: 'InputNumber',
|
||||
rules: z.number().min(0, '支付金额不能小于0'),
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
step: 0.01,
|
||||
|
|
@ -45,6 +46,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
component: 'InputNumber',
|
||||
rules: z.number().min(0, '赠送金额不能小于0'),
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
precision: 2,
|
||||
step: 0.01,
|
||||
|
|
|
|||
|
|
@ -62,6 +62,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '显示顺序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入显示顺序',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ export function useTypeFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
},
|
||||
|
|
@ -222,6 +222,7 @@ export function useDataFormSchema(): VbenFormSchema[] {
|
|||
label: '显示排序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入显示排序',
|
||||
},
|
||||
rules: 'required',
|
||||
|
|
@ -259,7 +260,7 @@ export function useDataFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -58,6 +58,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: 'SMTP 服务器端口',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入 SMTP 服务器端口',
|
||||
min: 0,
|
||||
max: 65_535,
|
||||
|
|
@ -89,7 +90,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -201,6 +201,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '显示顺序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入显示顺序',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'description',
|
||||
label: '应用描述',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入应用描述',
|
||||
},
|
||||
|
|
@ -74,6 +74,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '访问令牌的有效期',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入访问令牌的有效期,单位:秒',
|
||||
min: 0,
|
||||
},
|
||||
|
|
@ -84,6 +85,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '刷新令牌的有效期',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入刷新令牌的有效期,单位:秒',
|
||||
min: 0,
|
||||
},
|
||||
|
|
@ -161,7 +163,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'additionalInformation',
|
||||
label: '附加信息',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入附加信息,JSON 格式数据',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '显示顺序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入显示顺序',
|
||||
},
|
||||
|
|
@ -59,7 +60,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '岗位备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入岗位备注',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -45,6 +45,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
label: '显示顺序',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
min: 0,
|
||||
placeholder: '请输入显示顺序',
|
||||
},
|
||||
|
|
@ -64,7 +65,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '角色备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入角色备注',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'content',
|
||||
label: '模板内容',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入模板内容',
|
||||
rows: 4,
|
||||
|
|
@ -97,7 +97,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'remark',
|
||||
label: '备注',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
placeholder: '请输入备注',
|
||||
},
|
||||
|
|
@ -176,7 +176,7 @@ export function useSendSmsFormSchema(): VbenFormSchema[] {
|
|||
{
|
||||
fieldName: 'content',
|
||||
label: '模板内容',
|
||||
component: 'TextArea',
|
||||
component: 'Textarea',
|
||||
componentProps: {
|
||||
disabled: true,
|
||||
},
|
||||
|
|
|
|||
|
|
@ -91,6 +91,7 @@ export function useFormSchema(): VbenFormSchema[] {
|
|||
fieldName: 'accountCount',
|
||||
component: 'InputNumber',
|
||||
componentProps: {
|
||||
class: '!w-full',
|
||||
placeholder: '请输入账号额度',
|
||||
},
|
||||
rules: 'required',
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@ import {
|
|||
updateUserStatus,
|
||||
} from '#/api/system/user';
|
||||
import { $t } from '#/locales';
|
||||
import { DeptTreeSelect } from '#/views/system/dept/components';
|
||||
|
||||
import { useGridColumns, useGridFormSchema } from './data';
|
||||
import AssignRoleForm from './modules/assign-role-form.vue';
|
||||
import DeptTree from './modules/dept-tree.vue';
|
||||
import Form from './modules/form.vue';
|
||||
import ImportForm from './modules/import-form.vue';
|
||||
import ResetPasswordForm from './modules/reset-password-form.vue';
|
||||
|
|
@ -62,8 +62,8 @@ async function handleExport() {
|
|||
|
||||
/** 选择部门 */
|
||||
const searchDeptId = ref<number | undefined>(undefined);
|
||||
async function handleDeptSelect(dept: SystemDeptApi.Dept) {
|
||||
searchDeptId.value = dept.id;
|
||||
async function handleDeptSelect(dept?: SystemDeptApi.Dept) {
|
||||
searchDeptId.value = dept?.id;
|
||||
handleRefresh();
|
||||
}
|
||||
|
||||
|
|
@ -139,9 +139,7 @@ async function handleStatusChange(
|
|||
row: SystemUserApi.User,
|
||||
): Promise<boolean | undefined> {
|
||||
try {
|
||||
await confirm({
|
||||
content: `你要将${row.username}的状态切换为【${getDictLabel(DICT_TYPE.COMMON_STATUS, newStatus)}】吗?`,
|
||||
});
|
||||
await confirm(`你要将${row.username}的状态切换为【${getDictLabel(DICT_TYPE.COMMON_STATUS, newStatus)}】吗?`);
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -207,7 +205,7 @@ const [Grid, gridApi] = useVbenVxeGrid({
|
|||
<div class="flex h-full w-full">
|
||||
<!-- 左侧部门树 -->
|
||||
<Card class="mr-4 h-full w-1/6">
|
||||
<DeptTree @select="handleDeptSelect" />
|
||||
<DeptTreeSelect @select="handleDeptSelect" />
|
||||
</Card>
|
||||
<!-- 右侧用户列表 -->
|
||||
<div class="w-5/6">
|
||||
|
|
|
|||
Loading…
Reference in New Issue