feat(sdy): 新增分销商订单管理功能

- 添加分销商订单模型定义及API接口- 实现分销商订单导入导出功能- 完善订单编辑页面字段展示和校验逻辑- 调整订单列表页展示字段及操作按钮- 移除三级分销相关字段和功能- 修改订单状态标签文案和样式
- 增加订单删除确认弹窗- 优化导入弹窗组件及上传逻辑
- 调整搜索组件布局并增加导入按钮
- 更新订单详情弹窗标题和结算按钮文案
- 移除订单详情查看功能及相关代码
- 调整表格列配置和数据渲染方式
- 修复未签约订单提示逻辑
- 移除语言参数传递逻辑- 增加新窗口打开链接工具函数引入
This commit is contained in:
2025-10-01 18:48:14 +08:00
parent 52bd53eb70
commit 320a1939b6
18 changed files with 676 additions and 539 deletions

View File

@@ -1,4 +1,3 @@
<!-- 搜索表单 -->
<template>
<div class="search-container">
<!-- 搜索表单 -->
@@ -70,7 +69,6 @@
<a-space>
<a-button
type="primary"
:disabled="!selection?.length"
@click="batchSettle"
class="ele-btn-icon"
>
@@ -79,29 +77,36 @@
</template>
批量结算
</a-button>
<a-button
:disabled="!selection?.length"
@click="exportData"
class="ele-btn-icon"
>
<a-button @click="exportData" class="ele-btn-icon">
<template #icon>
<ExportOutlined />
</template>
导出数据
</a-button>
<a-button @click="openImport" class="ele-btn-icon">
<template #icon>
<UploadOutlined />
</template>
导入数据
</a-button>
</a-space>
</div>
</div>
<!-- 导入弹窗 -->
<Import v-model:visible="showImport" @done="emit('importDone')" />
</template>
<script lang="ts" setup>
import { reactive } from 'vue';
import { reactive, ref } from 'vue';
import {
SearchOutlined,
DollarOutlined,
ExportOutlined
ExportOutlined,
UploadOutlined
} from '@ant-design/icons-vue';
import type { ShopDealerOrderParam } from '@/api/shop/shopDealerOrder/model';
import Import from './Import.vue';
const props = withDefaults(
defineProps<{
@@ -117,8 +122,12 @@
(e: 'search', where?: ShopDealerOrderParam): void;
(e: 'batchSettle'): void;
(e: 'export'): void;
(e: 'importDone'): void;
}>();
// 是否显示导入弹窗
const showImport = ref(false);
// 搜索表单
const searchForm = reactive<ShopDealerOrderParam>({
orderId: undefined,
@@ -157,6 +166,11 @@
const exportData = () => {
emit('export');
};
// 打开导入弹窗
const openImport = () => {
showImport.value = true;
};
</script>
<style lang="less" scoped>