2024-04-28 16:20:45 +08:00
|
|
|
<template>
|
|
|
|
|
<div>
|
|
|
|
|
<!-- 搜索工作栏 -->
|
2024-06-17 16:02:52 +08:00
|
|
|
<Search v-if="!loading" ref="searchRef" :schema="allSchemas.searchSchema" labelWidth="0">
|
2024-05-31 17:38:17 +08:00
|
|
|
<template #actionMore>
|
|
|
|
|
<el-button @click="getTableList" v-hasPermi="['clue:order:search']"> 搜索 </el-button>
|
|
|
|
|
<el-button @click="resetQuery" v-hasPermi="['clue:order:reset']"> 重置 </el-button>
|
|
|
|
|
</template>
|
|
|
|
|
</Search>
|
2024-04-28 16:20:45 +08:00
|
|
|
<!-- 列表 -->
|
|
|
|
|
<SSTable
|
2024-06-17 16:02:52 +08:00
|
|
|
v-if="!loading"
|
2024-04-28 16:20:45 +08:00
|
|
|
class="mt-20px"
|
|
|
|
|
v-model:tableObject="tableObject"
|
|
|
|
|
:tableColumns="allSchemas.tableColumns"
|
|
|
|
|
@get-list="getTableList"
|
|
|
|
|
>
|
|
|
|
|
<el-table-column
|
|
|
|
|
v-for="item in allSchemas.tableColumns"
|
|
|
|
|
:key="item.field"
|
|
|
|
|
:prop="item.field"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
min-width="120px"
|
|
|
|
|
/>
|
2024-05-31 17:38:17 +08:00
|
|
|
<el-table-column label="操作" width="200px" fixed="right">
|
2024-04-28 16:20:45 +08:00
|
|
|
<template #default="scope">
|
|
|
|
|
<el-button
|
|
|
|
|
type="primary"
|
|
|
|
|
class="mr-10px"
|
|
|
|
|
link
|
|
|
|
|
style="padding: 0; margin-left: 0"
|
2024-05-31 17:38:17 +08:00
|
|
|
v-hasPermi="['clue:order:after-sale']"
|
2024-04-28 16:20:45 +08:00
|
|
|
@click="sellAfter(scope.row)"
|
|
|
|
|
>
|
2024-05-31 17:38:17 +08:00
|
|
|
售后
|
|
|
|
|
</el-button>
|
|
|
|
|
<el-button
|
|
|
|
|
type="primary"
|
|
|
|
|
class="mr-10px"
|
|
|
|
|
link
|
|
|
|
|
style="padding: 0; margin-left: 0"
|
|
|
|
|
v-hasPermi="['clue:order:after-sale-audit']"
|
|
|
|
|
>
|
|
|
|
|
售后审核
|
|
|
|
|
</el-button>
|
|
|
|
|
<el-button
|
|
|
|
|
type="primary"
|
|
|
|
|
class="mr-10px"
|
|
|
|
|
link
|
|
|
|
|
style="padding: 0; margin-left: 0"
|
|
|
|
|
v-hasPermi="['clue:order:send']"
|
2024-04-28 16:20:45 +08:00
|
|
|
>
|
2024-05-31 17:38:17 +08:00
|
|
|
发货(进销存)
|
|
|
|
|
</el-button>
|
2024-04-28 16:20:45 +08:00
|
|
|
<el-button
|
|
|
|
|
type="primary"
|
|
|
|
|
class="mr-10px"
|
|
|
|
|
link
|
|
|
|
|
style="padding: 0; margin-left: 0"
|
2024-05-31 17:38:17 +08:00
|
|
|
v-hasPermi="['clue:order:return']"
|
2024-04-28 16:20:45 +08:00
|
|
|
@click="feeBack(scope.row)"
|
|
|
|
|
>
|
2024-05-31 17:38:17 +08:00
|
|
|
回款
|
|
|
|
|
</el-button>
|
|
|
|
|
<el-button
|
|
|
|
|
type="primary"
|
|
|
|
|
class="mr-10px"
|
|
|
|
|
link
|
|
|
|
|
style="padding: 0; margin-left: 0"
|
|
|
|
|
v-hasPermi="['clue:order:return-audit']"
|
2024-04-28 16:20:45 +08:00
|
|
|
>
|
2024-05-31 17:38:17 +08:00
|
|
|
回款确认
|
|
|
|
|
</el-button>
|
2024-04-28 16:20:45 +08:00
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</SSTable>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script setup name="ClueOrder">
|
2024-06-17 16:02:52 +08:00
|
|
|
import { getSimpleFieldList } from '@/api/clue/orderField'
|
|
|
|
|
import * as SignApi from '@/api/clue/sign'
|
|
|
|
|
|
|
|
|
|
import { removeNullField } from '@/utils'
|
|
|
|
|
|
|
|
|
|
const allSchemas = ref({})
|
|
|
|
|
|
|
|
|
|
const searchRef = ref()
|
2024-04-28 16:20:45 +08:00
|
|
|
|
|
|
|
|
const tableObject = ref({
|
2024-06-17 16:02:52 +08:00
|
|
|
tableList: [],
|
2024-04-28 16:20:45 +08:00
|
|
|
loading: false,
|
|
|
|
|
total: 1,
|
|
|
|
|
pageSize: 20,
|
|
|
|
|
currentPage: 1
|
|
|
|
|
})
|
|
|
|
|
|
2024-05-31 17:38:17 +08:00
|
|
|
function resetQuery() {
|
2024-06-17 16:02:52 +08:00
|
|
|
searchRef.value.reset()
|
|
|
|
|
tableObject.value.currentPage = 1
|
|
|
|
|
getTableList()
|
2024-04-28 16:20:45 +08:00
|
|
|
}
|
|
|
|
|
// 查询
|
2024-06-17 16:02:52 +08:00
|
|
|
async function getTableList() {
|
|
|
|
|
// 查询
|
|
|
|
|
tableObject.value.loading = true
|
|
|
|
|
try {
|
|
|
|
|
const queryParams = await searchRef.value.getFormModel()
|
|
|
|
|
const params = {
|
|
|
|
|
...queryParams,
|
|
|
|
|
pageNo: tableObject.value.currentPage,
|
|
|
|
|
pageSize: tableObject.value.pageSize
|
|
|
|
|
}
|
|
|
|
|
const data = await SignApi.getSignPage(removeNullField(params))
|
|
|
|
|
tableObject.value.tableList = data.list.map((it) => ({ ...it, ...it.diyParams }))
|
|
|
|
|
tableObject.value.total = data.total
|
|
|
|
|
} finally {
|
|
|
|
|
tableObject.value.loading = false
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const loading = ref(true)
|
|
|
|
|
async function getCurdSchemas() {
|
|
|
|
|
loading.value = true
|
|
|
|
|
try {
|
|
|
|
|
const data = await getSimpleFieldList()
|
|
|
|
|
allSchemas.value = useCrudSchemas(data).allSchemas
|
|
|
|
|
} finally {
|
|
|
|
|
loading.value = false
|
|
|
|
|
nextTick(() => {
|
|
|
|
|
getTableList()
|
|
|
|
|
})
|
|
|
|
|
}
|
2024-04-28 16:20:45 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 售后
|
|
|
|
|
function sellAfter() {
|
|
|
|
|
// 方法体
|
|
|
|
|
}
|
2024-06-17 16:02:52 +08:00
|
|
|
|
|
|
|
|
onMounted(() => {
|
|
|
|
|
getCurdSchemas()
|
|
|
|
|
})
|
2024-04-28 16:20:45 +08:00
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped></style>
|