salary
qsh 5 months ago
parent 35598b4d6d
commit 1c37dbc5f8
  1. 54
      src/views/Clue/Order/index.vue
  2. 28
      src/views/Clue/Pool/Comp/DialogSuccess.vue
  3. 7
      src/views/Clue/Pool/index.vue

@ -1,7 +1,7 @@
<template>
<div>
<!-- 搜索工作栏 -->
<Search :schema="allSchemas.searchSchema" labelWidth="0">
<Search v-if="!loading" ref="searchRef" :schema="allSchemas.searchSchema" labelWidth="0">
<template #actionMore>
<el-button @click="getTableList" v-hasPermi="['clue:order:search']"> 搜索 </el-button>
<el-button @click="resetQuery" v-hasPermi="['clue:order:reset']"> 重置 </el-button>
@ -9,6 +9,7 @@
</Search>
<!-- 列表 -->
<SSTable
v-if="!loading"
class="mt-20px"
v-model:tableObject="tableObject"
:tableColumns="allSchemas.tableColumns"
@ -77,10 +78,17 @@
</template>
<script setup name="ClueOrder">
import { allSchemas } from './order.data'
import { getSimpleFieldList } from '@/api/clue/orderField'
import * as SignApi from '@/api/clue/sign'
import { removeNullField } from '@/utils'
const allSchemas = ref({})
const searchRef = ref()
const tableObject = ref({
tableList: [{ name: '测试', contact: '18888888888' }],
tableList: [],
loading: false,
total: 1,
pageSize: 20,
@ -88,17 +96,51 @@ const tableObject = ref({
})
function resetQuery() {
//
searchRef.value.reset()
tableObject.value.currentPage = 1
getTableList()
}
//
function getTableList() {
//
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()
})
}
}
//
function sellAfter() {
//
}
onMounted(() => {
getCurdSchemas()
})
</script>
<style lang="scss" scoped></style>

@ -128,11 +128,13 @@
class="mb-5px"
type="primary"
size="small"
@click="form.signProduct.push({ productId: undefined, specsId: undefined, signNum: 0 })"
@click="
form.signProducts.push({ productId: undefined, specsId: undefined, signNum: 0 })
"
>
添加成交产品
</el-button>
<el-table :data="form.signProduct" border size="small">
<el-table :data="form.signProducts" border size="small">
<el-table-column type="index" width="50" />
<el-table-column prop="productId" label="产品">
<template #default="{ row }">
@ -189,7 +191,7 @@
<Icon
icon="ep:remove-filled"
class="text-red-500"
@click="handleRemove('signProduct', $index)"
@click="handleRemove('signProducts', $index)"
/>
</template>
</el-table-column>
@ -255,7 +257,7 @@
<template #footer>
<span>
<el-button @click="show = false"> </el-button>
<el-button type="primary" @click="handleSave"> </el-button>
<el-button :disabled="formLoading" type="primary" @click="handleSave"> </el-button>
</span>
</template>
</Dialog>
@ -339,7 +341,7 @@ function resetForm(id) {
payAmount: 0,
remark: undefined,
extraPay: [],
signProduct: []
signProducts: []
}
}
@ -355,7 +357,7 @@ async function handleSave() {
return
}
if (form.value.signProduct.some((it) => !it.schoolId || !item.specsId || !it.signNum)) {
if (form.value.signProducts.some((it) => !it.productId || !item.specsId || !it.signNum)) {
message.info('请将成交产品信息填写完整!')
return
}
@ -363,9 +365,19 @@ async function handleSave() {
//
formLoading.value = true
try {
await createSign(form.value)
const params = { ...form.value }
params.diyParams = {}
diyFieldList.value.map((it) => {
params.diyParams[it.field] = undefined
})
for (const key in params.diyParams) {
if (Object.hasOwnProperty.call(params, key)) {
params.diyParams[key] = params[key]
}
}
await createSign(params)
message.success(t('common.createSuccess'))
dialogVisible.value = false
show.value = false
//
emit('success')
} finally {

@ -187,6 +187,11 @@ async function getCurdSchemas() {
loading.value = true
try {
const data = await getSimpleFieldList()
data.forEach((elem) => {
if (elem.field == 'followUser') {
elem.search.options = userOptions.value
}
})
allSchemas.value = useCrudSchemas(data).allSchemas
} finally {
loading.value = false
@ -314,9 +319,9 @@ const userOptions = ref([])
onMounted(() => {
getUserOption().then((data) => {
userOptions.value = data
})
getCurdSchemas()
})
})
</script>
<style lang="scss" scoped></style>

Loading…
Cancel
Save