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

@ -18,7 +18,8 @@
<el-option label="已驳回" :value="4" /> <el-option label="已驳回" :value="4" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item v-if="appStore.getAppInfo?.instanceType == 1"> <template v-if="appStore.getAppInfo?.instanceType == 1">
<el-form-item>
<el-select <el-select
v-model="searchForm.receiver" v-model="searchForm.receiver"
placeholder="接待人" placeholder="接待人"
@ -34,6 +35,66 @@
/> />
</el-select> </el-select>
</el-form-item> </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-form-item v-else-if="appStore.getAppInfo?.instanceType == 2">
<el-select <el-select
v-model="searchForm.convertPeople" v-model="searchForm.convertPeople"
@ -198,6 +259,30 @@
<div v-else>{{ row.isPayoff }}</div> <div v-else>{{ row.isPayoff }}</div>
</template> </template>
</el-table-column> </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 <el-table-column
v-if="appStore.getAppInfo?.instanceType == 1" v-if="appStore.getAppInfo?.instanceType == 1"
prop="receiverName" prop="receiverName"
@ -317,6 +402,9 @@
<script setup name="Reback"> <script setup name="Reback">
import * as FeebackApi from '@/api/clue/payment' import * as FeebackApi from '@/api/clue/payment'
import { getSimpleUserList as getUserOption, getAllUserList } from '@/api/system/user' 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 { useUserStore } from '@/store/modules/user'
import DialogFeebackAudit from './DialogFeebackAudit.vue' import DialogFeebackAudit from './DialogFeebackAudit.vue'
@ -352,6 +440,13 @@ const searchForm = ref({
const userOptions = ref([]) const userOptions = ref([])
const allUserOptions = 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 tableList = ref([])
const total = ref(0) const total = ref(0)
@ -373,11 +468,30 @@ function handleReset() {
applyUser: undefined, applyUser: undefined,
checkTime: [], checkTime: [],
mobile: undefined, mobile: undefined,
signSchool: undefined,
signPlace: undefined,
signClass: undefined,
pageNo: 1, pageNo: 1,
pageSize: 20 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 totalInfo = ref({})
const loading = ref(false) const loading = ref(false)
async function getList() { async function getList() {
@ -428,6 +542,11 @@ function handleAudit(row) {
} }
function getOptions() { function getOptions() {
//
getPlaceList({ placeStatus: 0, schoolStatus: 0, isSearchSchool: true }).then((data) => {
schoolOptions.value = data.schoolList
allPlaceOptions.value = data.placeList
})
getUserOption().then((data) => { getUserOption().then((data) => {
userOptions.value = data userOptions.value = data
}) })

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

Loading…
Cancel
Save