跟进记录bug修复

This commit is contained in:
lxz 2024-01-20 10:28:08 +08:00
parent 3d13078b90
commit 936d2a71da
4 changed files with 57 additions and 38 deletions

View File

@ -0,0 +1,24 @@
import type { isTemplate } from 'element-plus/es/utils';
<template>
<el-upload
accept="doc, docx, xls, xlsx, ppt, pptx, pdf, txt, zip, rar, tar, jpg, png, gif, jpeg, webp, wmv, avi, mpg, mpeg, 3gp, mov, mp4, flv, f4v, rmvb, mkv"
class="upload-demo" :show-file-list="false" aria-hidden="true" :headers="{ Token: userStore.token }"
:action="base_url + '/upload/file'" :on-success="handleAvatarSuccess_four" ref="upload">
<el-button type="primary">
上传
</el-button>
</el-upload>
<div>
<div v-for="(item, index) in formData.annex" style="margin-left: 5px;display: block;">
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{
item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div>
</div>
</template>
<script>
</script>

View File

@ -7,18 +7,13 @@
<el-form ref="formRef" :model="formData" label-width="90px"> <el-form ref="formRef" :model="formData" label-width="90px">
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
<el-tab-pane label="客户信息" name="new_name_1"> <el-tab-pane label="客户信息" name="new_name_1">
<el-descriptions title="基本信息" :column="2" border> <el-descriptions title="基本信息" :column="2" border>
<el-descriptions-item label="客户名称" label-align="left" align="left" <el-descriptions-item label="客户名称" label-align="left" align="left"
label-class-name="my-label">{{ formData.name }}</el-descriptions-item> label-class-name="my-label">{{ formData.name }}</el-descriptions-item>
<el-descriptions-item label="客户属性" label-align="left" align="left" label-class-name="my-label"> <el-descriptions-item label="客户属性" label-align="left" align="left" label-class-name="my-label">
{{ formData.custom_type_text }}</el-descriptions-item> {{ formData.custom_type_text }}</el-descriptions-item>
<el-descriptions-item label="上级公司" label-align="left" align="left" label-class-name="my-label"> <!-- <el-descriptions-item label="上级公司" label-align="left" align="left" label-class-name="my-label">
{{ formData.parent_company }}</el-descriptions-item> {{ formData.company_name }}</el-descriptions-item> -->
<el-descriptions-item label="客户地址" label-align="left" align="left" label-class-name="my-label"> <el-descriptions-item label="客户地址" label-align="left" align="left" label-class-name="my-label">
{{ formData.address }} {{ formData.address }}
</el-descriptions-item> </el-descriptions-item>

View File

@ -17,7 +17,7 @@
<el-col :span="8"> <el-col :span="8">
<el-form-item label="客户姓名" prop="name" <el-form-item label="客户姓名" prop="name"
:rules="[{ required: true, message: '不可为空', trigger: 'blur' }]"> :rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
<el-input v-model="formData.name" placeholder="请输入本文行单客户姓名" clearable <el-input v-model="formData.name" placeholder="请输入客户姓名" clearable
:style="{ width: '100%' }"></el-input> :style="{ width: '100%' }"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -31,36 +31,25 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <!-- <el-col :span="8"> -->
<el-form-item label="上级公司" prop="parent_company"> <!-- <el-form-item label="上级公司" prop="parent_company">
<el-input v-model="companyname" placeholder="请输入上级公司" <el-input v-model="companyname" placeholder="请输入上级公司" @click="showDialog = true"
@change="companyname.length == 0 ? formData.parent_company = '' : ''" clearable @change="companyname.length == 0 ? formData.parent_company = '' : ''" clearable
:style="{ width: '100%' }"> :style="{ width: '100%' }">
<template #append> <template #append>
<el-button @click="showDialog = true">选择</el-button> <el-button @click="showDialog = true">选择</el-button>
{{ formData.parent_company }}
</template> </template>
</el-input> </el-input>
</el-form-item> </el-form-item> -->
</el-col> <!-- </el-col> -->
<el-col :span="8"> <el-col :span="8">
<el-form-item label="电话" prop="phone" <el-form-item label="电话" prop="phone"
:rules="[{ required: true, validator: checkPhone, trigger: 'blur' }]"> :rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
<el-input v-model="formData.phone" placeholder="请输入电话" clearable :style="{ width: '100%' }"> <el-input v-model="formData.phone" placeholder="请输入电话" clearable :style="{ width: '100%' }">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="16">
<el-form-item label="信用度" prop="credit_rating"
:rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
<el-radio-group v-model="formData.credit_rating" placeholder="请选择信用度">
<el-radio v-for="(item, index) in dictData.credit_rating" :key="index"
:label="parseInt(item.value)">
{{ item.name }}
</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="省" prop="province" <el-form-item label="省" prop="province"
:rules="[{ required: true, message: '不可为空', trigger: 'blur' }]"> :rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
@ -89,11 +78,22 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="6">
<el-form-item label="地址" prop="address"> <el-form-item label="地址" prop="address">
<el-input v-model="formData.address" clearable placeholder="请输入地址" /> <el-input v-model="formData.address" clearable placeholder="请输入地址" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-form-item label="信用度" prop="credit_rating"
:rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
<el-radio-group v-model="formData.credit_rating" placeholder="请选择信用度">
<el-radio v-for="(item, index) in dictData.credit_rating" :key="index"
:label="parseInt(item.value)">
{{ item.name }}
</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="备注" prop="notes"> <el-form-item label="备注" prop="notes">
<el-input v-model="formData.notes" type="textarea" placeholder="请输入备注" <el-input v-model="formData.notes" type="textarea" placeholder="请输入备注"
@ -308,9 +308,9 @@
</el-card> </el-card>
</el-form> </el-form>
</popup> </popup>
<el-dialog v-model="showDialog" title="选择客户" width="70%"> <!-- <el-dialog v-model="showDialog" title="选择客户" width="70%">
<customDialog @customEvent="customEvent"></customDialog> <customDialog @customEvent="customEvent"></customDialog>
</el-dialog> </el-dialog> -->
</div> </div>
</template> </template>
@ -339,7 +339,7 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const mode = ref('add') const mode = ref('add')
const companyname = ref('') // const companyname = ref('')
const list1 = reactive([]) const list1 = reactive([])
const showDialog = ref(false); const showDialog = ref(false);
const list2 = reactive([]) const list2 = reactive([])
@ -356,11 +356,11 @@ const datas = reactive({
areaOptions: [], areaOptions: [],
}); });
const customEvent = (e: any) => { // const customEvent = (e: any) => {
formData.parent_company = e.id; // formData.parent_company = e.id;
companyname.value = e.name; // companyname.value = e.name;
showDialog.value = false; // showDialog.value = false;
}; // };
const handleAdd = (row: any) => { const handleAdd = (row: any) => {
// row // row
@ -449,7 +449,7 @@ const formData = reactive({
org_id: '', org_id: '',
name: '', name: '',
custom_type: '', custom_type: '',
parent_company: '', // parent_company: '',
phone: '', phone: '',
credit_rating: '', credit_rating: '',
province: '', province: '',

View File

@ -139,9 +139,9 @@ const setFormData = async (data: Record<any, any>) => {
} }
//@ts-ignore //@ts-ignore
formData.date = timeFormat(formData.date, 'yyyy-mm-dd hh:MM:ss') formData.date = timeFormat(formData.date, 'yyyy-mm-dd')
//@ts-ignore //@ts-ignore
formData.next_follow_date = timeFormat(formData.next_follow_date, 'yyyy-mm-dd hh:MM:ss') formData.next_follow_date = timeFormat(formData.next_follow_date, 'yyyy-mm-dd')
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {