salary
qsh 4 months ago
parent d31f4b4f8b
commit 72accc0ab2
  1. 20
      src/views/Clue/Order/Comp/AfterSales.vue
  2. 6
      src/views/Clue/Order/Comp/Delivery.vue
  3. 4
      src/views/Clue/Order/Comp/DialogAfterSaleAudit.vue
  4. 6
      src/views/Clue/Order/Comp/DialogAfterSaleDetail.vue
  5. 4
      src/views/Clue/Order/Comp/DialogFeebackAudit.vue
  6. 4
      src/views/Clue/Order/Comp/DialogFeebackDetail.vue
  7. 11
      src/views/Clue/Order/Comp/DialogOrder.vue
  8. 4
      src/views/Clue/Order/Comp/MallOrderList.vue
  9. 10
      src/views/Clue/Order/Comp/MallSettle.vue
  10. 4
      src/views/Clue/Order/Comp/OrderList.vue
  11. 20
      src/views/Clue/Order/Comp/Reback.vue
  12. 10
      src/views/Clue/Order/Comp/SchoolSettle.vue
  13. 98
      src/views/Clue/Order/order.data.js
  14. 63
      src/views/Clue/Pool/Comp/DialogSuccess.vue
  15. 5
      src/views/Clue/Pool/Comp/DrawerClue.vue
  16. 1
      src/views/Clue/Pool/index.vue

@ -32,8 +32,8 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
range-separator="-" range-separator="-"
start-placeholder="登记日期" start-placeholder="成交日期"
end-placeholder="登记日期" end-placeholder="成交日期"
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -79,9 +79,19 @@
<el-table-column prop="isReturns" label="是否退货" min-width="90px" /> <el-table-column prop="isReturns" label="是否退货" min-width="90px" />
<el-table-column prop="solution" label="解决方案" min-width="150px" /> <el-table-column prop="solution" label="解决方案" min-width="150px" />
<el-table-column prop="signUserName" label="登记人" min-width="90px" /> <el-table-column prop="signUserName" label="登记人" min-width="90px" />
<el-table-column prop="dealDate" label="登记时间" min-width="150px" /> <el-table-column
prop="dealDate"
label="成交日期"
min-width="120px"
:formatter="dateFormatter"
/>
<el-table-column prop="applyUserName" label="申请人" min-width="90px" /> <el-table-column prop="applyUserName" label="申请人" min-width="90px" />
<el-table-column prop="applyTime" label="申请时间" min-width="150px" /> <el-table-column
prop="applyTime"
label="申请时间"
min-width="120px"
:formatter="dateFormatter"
/>
<el-table-column prop="stateName" label="审核状态" fixed="right" min-width="90px" /> <el-table-column prop="stateName" label="审核状态" fixed="right" min-width="90px" />
<el-table-column label="操作" width="150px" fixed="right"> <el-table-column label="操作" width="150px" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
@ -132,6 +142,8 @@ import DialogAfterSaleAudit from './DialogAfterSaleAudit.vue'
import DialogAfterSaleDetail from './DialogAfterSaleDetail.vue' import DialogAfterSaleDetail from './DialogAfterSaleDetail.vue'
import DialogBatchAudit from './DialogBatchAudit.vue' import DialogBatchAudit from './DialogBatchAudit.vue'
import { dateFormatter } from '@/utils/formatTime'
const afterSaleAuditDialog = ref() const afterSaleAuditDialog = ref()
const userStore = useUserStore() const userStore = useUserStore()

@ -24,8 +24,8 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
range-separator="-" range-separator="-"
start-placeholder="登记日期" start-placeholder="成交日期"
end-placeholder="登记日期" end-placeholder="成交日期"
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -71,7 +71,7 @@
<el-table-column prop="name" label="线索名称" min-width="120px" /> <el-table-column prop="name" label="线索名称" min-width="120px" />
<el-table-column prop="phone" label="联系方式" width="120px" /> <el-table-column prop="phone" label="联系方式" width="120px" />
<el-table-column prop="signUserName" label="登记人" min-width="90" /> <el-table-column prop="signUserName" label="登记人" min-width="90" />
<el-table-column prop="dealDate" label="登记时间" width="120px" :formatter="dateFormatter" /> <el-table-column prop="dealDate" label="成交日期" width="120px" :formatter="dateFormatter" />
<el-table-column prop="productName" label="成交产品" min-width="150px" /> <el-table-column prop="productName" label="成交产品" min-width="150px" />
<el-table-column prop="specsName" label="产品规格" min-width="150px" /> <el-table-column prop="specsName" label="产品规格" min-width="150px" />
<el-table-column prop="signNum" label="销售数量" width="90px" /> <el-table-column prop="signNum" label="销售数量" width="90px" />

@ -44,7 +44,8 @@ const schema = [
}, },
{ {
field: 'dealDate', field: 'dealDate',
label: '登记时间', label: '成交日期',
dateFormat: 'YYYY-MM-DD',
span: 1 span: 1
}, },
{ {
@ -75,6 +76,7 @@ const schema = [
{ {
field: 'applyTime', field: 'applyTime',
label: '申请时间', label: '申请时间',
dateFormat: 'YYYY-MM-DD',
span: 1 span: 1
}, },
{ {

@ -40,8 +40,8 @@ const applySchema = [
}, },
{ {
field: 'dealDate', field: 'dealDate',
label: '登记时间', label: '成交日期',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD',
span: 1 span: 1
}, },
{ {
@ -72,7 +72,7 @@ const applySchema = [
{ {
field: 'applyTime', field: 'applyTime',
label: '申请时间', label: '申请时间',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD',
span: 1 span: 1
}, },
{ {

@ -44,7 +44,8 @@ const schema = [
}, },
{ {
field: 'dealDate', field: 'dealDate',
label: '登记时间', label: '成交日期',
dateFormat: 'YYYY-MM-DD',
span: 1 span: 1
}, },
{ {
@ -65,6 +66,7 @@ const schema = [
{ {
field: 'applyTime', field: 'applyTime',
label: '申请时间', label: '申请时间',
dateFormat: 'YYYY-MM-DD',
span: 1 span: 1
}, },
{ {

@ -40,8 +40,8 @@ const applySchema = [
}, },
{ {
field: 'dealDate', field: 'dealDate',
label: '登记时间', label: '成交日期',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD',
span: 1 span: 1
}, },
{ {

@ -157,6 +157,12 @@ const orderSchema = ref([])
function getFields() { function getFields() {
getClueFieldList().then((data) => { getClueFieldList().then((data) => {
const arr = useCrudSchemas(data).allSchemas.detailSchema const arr = useCrudSchemas(data).allSchemas.detailSchema
arr.forEach((it) => {
if (it.label.includes('日期')) {
it.dateFormat = 'YYYY-MM-DD'
}
})
if (arr.length % 2 != 0) { if (arr.length % 2 != 0) {
arr.push({}) arr.push({})
} }
@ -178,6 +184,11 @@ function getFields() {
getOrderFieldList().then((data) => { getOrderFieldList().then((data) => {
const arr = useCrudSchemas(data).allSchemas.detailSchema const arr = useCrudSchemas(data).allSchemas.detailSchema
arr.forEach((it) => {
if (it.label.includes('日期')) {
it.dateFormat = 'YYYY-MM-DD'
}
})
if (arr.length % 2 != 0) { if (arr.length % 2 != 0) {
arr.push({}) arr.push({})
} }

@ -126,6 +126,9 @@
</template> </template>
<div v-dompurify-html="row.remark"></div> <div v-dompurify-html="row.remark"></div>
</el-popover> </el-popover>
<span v-else-if="item.form?.component == 'DatePicker'">
{{ formatDate(row[item.field]) }}
</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="240px" fixed="right"> <el-table-column label="操作" width="240px" fixed="right">
@ -207,6 +210,7 @@ import DialogExtraFee from './DialogExtraPay.vue'
import DialogDelivery from './DialogDelivery.vue' import DialogDelivery from './DialogDelivery.vue'
import { removeNullField } from '@/utils' import { removeNullField } from '@/utils'
import { formatDate } from '@/utils/formatTime'
const userOptions = ref([]) const userOptions = ref([])
onMounted(() => { onMounted(() => {

@ -33,8 +33,8 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
range-separator="-" range-separator="-"
start-placeholder="登记日期" start-placeholder="成交日期"
end-placeholder="登记日期" end-placeholder="成交日期"
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -111,7 +111,7 @@
<el-table-column prop="name" label="线索名称" min-width="120px" /> <el-table-column prop="name" label="线索名称" min-width="120px" />
<el-table-column prop="phone" label="联系方式" width="120px" /> <el-table-column prop="phone" label="联系方式" width="120px" />
<el-table-column prop="signUserName" label="登记人" min-width="90" /> <el-table-column prop="signUserName" label="登记人" min-width="90" />
<el-table-column prop="dealDate" label="登记时间" width="120px" :formatter="dateFormatter" /> <el-table-column prop="dealDate" label="成交日期" width="120px" :formatter="dateFormatter" />
<el-table-column prop="signProduct" label="成交产品" min-width="150px" /> <el-table-column prop="signProduct" label="成交产品" min-width="150px" />
<el-table-column prop="signSpecs" label="成交规格" min-width="150px" /> <el-table-column prop="signSpecs" label="成交规格" min-width="150px" />
<el-table-column prop="supplier" label="供应商" min-width="150px" /> <el-table-column prop="supplier" label="供应商" min-width="150px" />
@ -252,9 +252,9 @@ function getSummaries(param) {
columns.forEach((column, index) => { columns.forEach((column, index) => {
if (index === 0) { if (index === 0) {
sums[index] = '合计' sums[index] = '合计'
} else if (column.property == 'settleNum') { } else if (column.property == 'settlementNum') {
sums[index] = totalNum.value sums[index] = totalNum.value
} else if (column.property == 'settleAmount') { } else if (column.property == 'settlementMoney') {
sums[index] = totalAmount.value sums[index] = totalAmount.value
} else { } else {
sums[index] = '' sums[index] = ''

@ -100,6 +100,9 @@
</template> </template>
<div v-dompurify-html="row.remark"></div> <div v-dompurify-html="row.remark"></div>
</el-popover> </el-popover>
<span v-else-if="item.form?.component == 'DatePicker'">
{{ formatDate(row[item.field]) }}
</span>
<span v-else>{{ row[item.field] }}</span> <span v-else>{{ row[item.field] }}</span>
</template> </template>
</el-table-column> </el-table-column>
@ -181,6 +184,7 @@ import DialogAfterSale from './DialogAfterSale.vue'
import DialogExtraFee from './DialogExtraPay.vue' import DialogExtraFee from './DialogExtraPay.vue'
import { removeNullField } from '@/utils' import { removeNullField } from '@/utils'
import { formatDate } from '@/utils/formatTime'
const userOptions = ref([]) const userOptions = ref([])
onMounted(() => { onMounted(() => {

@ -32,8 +32,8 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
range-separator="-" range-separator="-"
start-placeholder="登记日期" start-placeholder="成交日期"
end-placeholder="登记日期" end-placeholder="成交日期"
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -77,9 +77,19 @@
<el-table-column prop="money" label="回款金额" min-width="90" /> <el-table-column prop="money" label="回款金额" min-width="90" />
<el-table-column prop="isPayoff" label="是否结清" min-width="90" /> <el-table-column prop="isPayoff" label="是否结清" min-width="90" />
<el-table-column prop="signUserName" label="登记人" min-width="90" /> <el-table-column prop="signUserName" label="登记人" min-width="90" />
<el-table-column prop="dealDate" label="登记时间" min-width="150px" /> <el-table-column
prop="dealDate"
label="成交日期"
min-width="120px"
:formatter="dateFormatter"
/>
<el-table-column prop="applyUserName" label="申请人" min-width="90" /> <el-table-column prop="applyUserName" label="申请人" min-width="90" />
<el-table-column prop="applyTime" label="申请时间" min-width="150px" /> <el-table-column
prop="applyTime"
label="申请时间"
min-width="120px"
:formatter="dateFormatter"
/>
<el-table-column prop="stateName" label="审核状态" fixed="right" min-width="90" /> <el-table-column prop="stateName" label="审核状态" fixed="right" min-width="90" />
<el-table-column label="操作" width="150px" fixed="right"> <el-table-column label="操作" width="150px" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
@ -131,6 +141,8 @@ import DialogFeebackAudit from './DialogFeebackAudit.vue'
import DialogFeebackDetail from './DialogFeebackDetail.vue' import DialogFeebackDetail from './DialogFeebackDetail.vue'
import DialogBatchAudit from './DialogBatchAudit.vue' import DialogBatchAudit from './DialogBatchAudit.vue'
import { dateFormatter } from '@/utils/formatTime'
const userStore = useUserStore() const userStore = useUserStore()
const message = useMessage() // const message = useMessage() //

@ -33,8 +33,8 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
range-separator="-" range-separator="-"
start-placeholder="登记日期" start-placeholder="成交日期"
end-placeholder="登记日期" end-placeholder="成交日期"
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -117,7 +117,7 @@
<el-table-column prop="name" label="线索名称" min-width="120px" /> <el-table-column prop="name" label="线索名称" min-width="120px" />
<el-table-column prop="phone" label="联系方式" width="120px" /> <el-table-column prop="phone" label="联系方式" width="120px" />
<el-table-column prop="signUserName" label="登记人" min-width="90" /> <el-table-column prop="signUserName" label="登记人" min-width="90" />
<el-table-column prop="dealDate" label="登记时间" width="120px" :formatter="dateFormatter" /> <el-table-column prop="dealDate" label="成交日期" width="120px" :formatter="dateFormatter" />
<el-table-column prop="signSchool" label="成交驾校" min-width="150px" /> <el-table-column prop="signSchool" label="成交驾校" min-width="150px" />
<el-table-column prop="signPlace" label="成交场地" min-width="150px" /> <el-table-column prop="signPlace" label="成交场地" min-width="150px" />
<el-table-column prop="signClass" label="成交班型" min-width="150px" /> <el-table-column prop="signClass" label="成交班型" min-width="150px" />
@ -260,9 +260,9 @@ function getSummaries(param) {
columns.forEach((column, index) => { columns.forEach((column, index) => {
if (index === 0) { if (index === 0) {
sums[index] = '合计' sums[index] = '合计'
} else if (column.property == 'settleNum') { } else if (column.property == 'settlementNum') {
sums[index] = totalNum.value sums[index] = totalNum.value
} else if (column.property == 'settleAmount') { } else if (column.property == 'settlementMoney') {
sums[index] = totalAmount.value sums[index] = totalAmount.value
} else { } else {
sums[index] = '' sums[index] = ''

@ -1,98 +0,0 @@
// import { CrudSchema } from '@/hooks/web/useCrudSchemas'
import { dateFormatter } from '@/utils/formatTime'
// import * as MailAccountApi from '@/api/system/mail/account'
// const userList = await MailAccountApi.getSimpleMailAccountList()
const userList = []
const crudSchemas = reactive([
{
label: '订单号',
field: 'orderNo',
isSearch: true,
isTable: true
},
{
label: '线索名称',
field: 'name',
isSearch: true,
isTable: true
},
{
label: '联系方式',
field: 'contact',
isSearch: true,
isTable: true
},
{
label: '线索来源',
field: 'resource',
isSearch: true,
isTable: true,
search: {
component: 'Select',
api: () => userList,
componentProps: {
optionsAlias: {
labelField: 'name',
valueField: 'id'
}
}
}
},
{
label: '跟进人员',
field: 'userId',
isSearch: true,
isTable: true,
search: {
component: 'Select',
api: () => userList,
componentProps: {
optionsAlias: {
labelField: 'name',
valueField: 'id'
}
}
}
},
{
label: '成交时间',
field: 'createTime',
isSearch: true,
isTable: true,
table: {
fixed: 'left'
},
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD'
},
search: {
component: 'DatePicker',
componentProps: {
type: 'daterange',
format: 'YYYY-MM-DD',
valueFormat: 'YYYY-MM-DD',
startPlaceholder: '创建时间',
endPlaceholder: '创建时间'
}
}
},
{
label: '是否全款',
field: 'isFull',
isSearch: true,
isTable: true,
search: {
component: 'Radio',
componentProps: {
options: [
{ label: '全款', value: 1 },
{ label: '非全款', value: 0 }
]
}
}
}
])
export const { allSchemas } = useCrudSchemas(crudSchemas)

@ -10,31 +10,6 @@
/> />
<el-form :model="form" ref="formRef" :rules="rules" label-width="80px" class="mt-20px"> <el-form :model="form" ref="formRef" :rules="rules" label-width="80px" class="mt-20px">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="8" :offset="0">
<el-form-item label="成交日期" prop="dealDate">
<el-date-picker
v-model="form.dealDate"
type="date"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
placeholder="选择日期时间"
style="width: 100%"
/>
</el-form-item>
</el-col>
<el-col :span="8" :offset="0">
<el-form-item label="是否全款">
<el-radio-group v-model="form.state">
<el-radio :label="true"> 全款 </el-radio>
<el-radio :label="false"> 非全款 </el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="8" :offset="0">
<el-form-item label="支付金额" prop="payAmount">
<el-input-number v-model="form.payAmount" :min="1" :step="1" style="width: 100%" />
</el-form-item>
</el-col>
<!-- 驾校招生模式 --> <!-- 驾校招生模式 -->
<template v-if="appStore.getAppInfo?.instanceType == 1"> <template v-if="appStore.getAppInfo?.instanceType == 1">
<el-col :span="8" :offset="0"> <el-col :span="8" :offset="0">
@ -91,6 +66,31 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</template> </template>
<el-col :span="8" :offset="0">
<el-form-item label="成交日期" prop="dealDate">
<el-date-picker
v-model="form.dealDate"
type="date"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
placeholder="选择日期时间"
style="width: 100%"
/>
</el-form-item>
</el-col>
<el-col :span="8" :offset="0">
<el-form-item label="是否全款">
<el-radio-group v-model="form.state">
<el-radio :label="true"> 全款 </el-radio>
<el-radio :label="false"> 非全款 </el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="8" :offset="0">
<el-form-item label="支付金额" prop="payAmount">
<el-input-number v-model="form.payAmount" :min="1" :step="1" style="width: 100%" />
</el-form-item>
</el-col>
<el-col :span="8" :offset="0"> <el-col :span="8" :offset="0">
<el-form-item label="公司收款" prop="isCompanyReceipts"> <el-form-item label="公司收款" prop="isCompanyReceipts">
<el-radio-group v-model="form.isCompanyReceipts"> <el-radio-group v-model="form.isCompanyReceipts">
@ -340,6 +340,15 @@ const extraTotalPrice = computed(() => {
}) })
const showSchema = computed(() => { const showSchema = computed(() => {
let list = props.schema.map((it) => {
if (it.label.includes('日期')) {
it.dateFormat = 'YYYY-MM-DD'
}
return it
})
if (list.length % 2 != 0) {
list.push({})
}
const arr = [ const arr = [
{ {
field: 'requirement', field: 'requirement',
@ -353,7 +362,7 @@ const showSchema = computed(() => {
span: 2 span: 2
} }
] ]
return [...props.schema, ...arr] return [...list, ...arr]
}) })
const extraPayOptions = getDictOptions('other_pay_type') const extraPayOptions = getDictOptions('other_pay_type')
@ -488,7 +497,7 @@ function changePlace() {
function changeClass() { function changeClass() {
form.value.payAmount = form.value.payAmount =
classOptions.value.find((it) => (it.typeId = form.value.signClass)).guidingPrice || 0 classOptions.value.find((it) => it.typeId == form.value.signClass).guidingPrice || 0
} }
function handleRemove(type, index) { function handleRemove(type, index) {

@ -180,6 +180,11 @@ const props = defineProps({
const showSchema = computed(() => { const showSchema = computed(() => {
const arr1 = [...props.schema] const arr1 = [...props.schema]
arr1.forEach((it) => {
if (it.label.includes('日期')) {
it.dateFormat = 'YYYY-MM-DD'
}
})
if (arr1.length % 2 != 0) { if (arr1.length % 2 != 0) {
arr1.push({}) arr1.push({})
} }

@ -133,6 +133,7 @@
<el-button <el-button
type="primary" type="primary"
link link
:disabled="scope.row.state == '成交'"
v-hasPermi="['clue:pool:release']" v-hasPermi="['clue:pool:release']"
@click="handleRelease(scope.row.clueId)" @click="handleRelease(scope.row.clueId)"
> >

Loading…
Cancel
Save