qsh 3 weeks ago
parent 0ef7703f7d
commit 24e540f151
  1. 151
      src/views/Clue/Order/Comp/Reback.vue
  2. 24
      src/views/Clue/Set/Comp/DialogSource.vue

@ -18,22 +18,83 @@
<el-option label="已驳回" :value="4" />
</el-select>
</el-form-item>
<el-form-item v-if="appStore.getAppInfo?.instanceType == 1">
<el-select
v-model="searchForm.receiver"
placeholder="接待人"
clearable
filterable
style="width: 120px"
>
<el-option
v-for="item in allUserOptions"
:key="item.id"
:label="item.nickname"
:value="item.id"
/>
</el-select>
</el-form-item>
<template v-if="appStore.getAppInfo?.instanceType == 1">
<el-form-item>
<el-select
v-model="searchForm.receiver"
placeholder="接待人"
clearable
filterable
style="width: 120px"
>
<el-option
v-for="item in allUserOptions"
:key="item.id"
:label="item.nickname"
:value="item.id"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-select
v-model="searchForm.signSchool"
placeholder="选择驾校"
filterable
clearable
@change="changeSchool"
>
<el-option
v-for="item in schoolOptions"
:key="item.schoolId"
:label="item.schoolName"
:value="item.schoolId"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-select
v-model="searchForm.signPlace"
placeholder="选择场地"
filterable
clearable
:disabled="!searchForm.signSchool"
@change="changePlace"
>
<el-option
v-for="item in placeOptions"
:key="item.placeId"
:label="item.name"
:value="item.placeId"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-select
v-model="searchForm.signClass"
:disabled="!searchForm.signPlace"
placeholder="选择班型"
filterable
clearable
>
<el-option
v-for="item in classOptions"
:key="item.typeId"
:label="item.typeName"
:value="item.typeId"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-select v-model="searchForm.licenseType" placeholder="驾照类型" filterable clearable>
<el-option
v-for="item in getDictOptions(DICT_TYPE.LINCENSE_TYPE)"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
</template>
<el-form-item v-else-if="appStore.getAppInfo?.instanceType == 2">
<el-select
v-model="searchForm.convertPeople"
@ -198,6 +259,30 @@
<div v-else>{{ row.isPayoff }}</div>
</template>
</el-table-column>
<el-table-column
v-if="appStore.getAppInfo?.instanceType == 1"
prop="signSchool"
label="报名驾校"
min-width="90"
/>
<el-table-column
v-if="appStore.getAppInfo?.instanceType == 1"
prop="signPlace"
label="报名场地"
min-width="90"
/>
<el-table-column
v-if="appStore.getAppInfo?.instanceType == 1"
prop="signClass"
label="报名班型"
min-width="90"
/>
<el-table-column
v-if="appStore.getAppInfo?.instanceType == 1"
prop="licenseType"
label="驾照类型"
min-width="90"
/>
<el-table-column
v-if="appStore.getAppInfo?.instanceType == 1"
prop="receiverName"
@ -317,6 +402,9 @@
<script setup name="Reback">
import * as FeebackApi from '@/api/clue/payment'
import { getSimpleUserList as getUserOption, getAllUserList } from '@/api/system/user'
import { getPlaceList } from '@/api/school/place'
import { getClassTypeList } from '@/api/school/class'
import { DICT_TYPE, getDictOptions } from '@/utils/dict'
import { useUserStore } from '@/store/modules/user'
import DialogFeebackAudit from './DialogFeebackAudit.vue'
@ -352,6 +440,13 @@ const searchForm = ref({
const userOptions = ref([])
const allUserOptions = ref([])
const schoolOptions = ref([])
const allPlaceOptions = ref([])
const placeOptions = computed(() => {
return allPlaceOptions.value.filter((it) => it.schoolId == searchForm.value.signSchool)
})
const tableList = ref([])
const total = ref(0)
@ -373,11 +468,30 @@ function handleReset() {
applyUser: undefined,
checkTime: [],
mobile: undefined,
signSchool: undefined,
signPlace: undefined,
signClass: undefined,
pageNo: 1,
pageSize: 20
}
}
function changeSchool() {
searchForm.value.signPlace = undefined
searchForm.value.signClass = undefined
}
function changePlace() {
searchForm.value.signClass = undefined
getClassTypeOptions()
}
const classOptions = ref([])
async function getClassTypeOptions() {
const data = await getClassTypeList({ placeId: searchForm.value.signPlace, status: 0 })
classOptions.value = data
}
const totalInfo = ref({})
const loading = ref(false)
async function getList() {
@ -428,6 +542,11 @@ function handleAudit(row) {
}
function getOptions() {
//
getPlaceList({ placeStatus: 0, schoolStatus: 0, isSearchSchool: true }).then((data) => {
schoolOptions.value = data.schoolList
allPlaceOptions.value = data.placeList
})
getUserOption().then((data) => {
userOptions.value = data
})

@ -24,8 +24,8 @@
</el-form-item>
</el-col>
<el-col :span="12" :offset="0">
<el-form-item label="成本模式" prop="mode">
<el-radio-group v-model="formData.mode">
<el-form-item label="成本模式" prop="costModel">
<el-radio-group v-model="formData.costModel">
<el-radio :label="0"> 总价 </el-radio>
<el-radio :label="1"> 单价 </el-radio>
</el-radio-group>
@ -56,7 +56,7 @@
<el-divider direction="horizontal" content-position="left">线索成本</el-divider>
<el-button class="mb-10px" type="primary" @click="handleAddPrice"> 添加年份 </el-button>
<el-table :data="formData.priceVOList" border>
<el-table :data="formData.sourceCostVOS" border>
<el-table-column label="年份" width="120">
<template #default="{ row }">
<el-date-picker
@ -73,7 +73,7 @@
<el-table-column v-for="col in 12" :key="col" :label="`${col}月`" width="100px">
<template #default="{ row }">
<el-input-number
v-model="row.monthTargetVOList[col - 1].targetPrice"
v-model="row.monthData[col - 1].costMoney"
size="small"
:controls="false"
style="width: 100%"
@ -163,8 +163,8 @@ const resetForm = () => {
status: 0,
sort: 1,
remark: '',
mode: 0,
priceVOList: []
costModel: 0,
sourceCostVOS: []
}
formRef.value?.resetFields()
}
@ -172,17 +172,17 @@ const resetForm = () => {
function handleAddPrice() {
const obj = {
year: undefined,
monthTargetVOList: []
monthData: []
}
for (let i = 1; i <= 12; i++) {
obj.monthTargetVOList.push({
obj.monthData.push({
month: i,
targetPrice: undefined
costMoney: undefined
})
}
if (!formData.value.priceVOList) {
formData.value.priceVOList = []
if (!formData.value.sourceCostVOS) {
formData.value.sourceCostVOS = []
}
formData.value.priceVOList.push(obj)
formData.value.sourceCostVOS.push(obj)
}
</script>

Loading…
Cancel
Save