Files
ss-crm-manage-web/src/views/Clue/Order/index.vue

147 lines
3.6 KiB
Vue
Raw Normal View History

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>