|
@@ -4,7 +4,7 @@
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<div class="top">
|
|
|
- <el-input placeholder="客户名称" class="input-demo" v-model="formCondition.customName"></el-input>
|
|
|
+ <el-input placeholder="客户名称" class="input-demo" v-model="formCondition.customerName"></el-input>
|
|
|
<el-button type="success" style="margin-left: 1%;" @click="loadData">查询</el-button>
|
|
|
<el-button type="success" style="margin-left: 1%;" @click="addCustomerShow = true">添加</el-button>
|
|
|
<el-button type="primary" style="margin-left: 1%;" @click="exportExcel">导出报表</el-button>
|
|
@@ -20,7 +20,7 @@
|
|
|
v-loading="loading"
|
|
|
ref="multipleTable"
|
|
|
:data="coustomerTable"
|
|
|
- height="370px"
|
|
|
+ :height="heightt"
|
|
|
border
|
|
|
tooltip-effect="dark">
|
|
|
<el-table-column
|
|
@@ -113,7 +113,7 @@
|
|
|
<el-form-item label="客戶名称" prop="customerName">
|
|
|
<el-input v-model="customer.customerName" auto-complete="off" placeholder="请输入用户名"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="客户主体" prop="customerCompany">
|
|
|
+ <el-form-item label="客户主体" prop="customerCompany">
|
|
|
<el-input v-model="customer.company" auto-complete="off" placeholder="请输入主体名称"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="业务类型" prop="bussinessType">
|
|
@@ -458,7 +458,9 @@
|
|
|
<el-form
|
|
|
label-position="right"
|
|
|
label-width="80px"
|
|
|
- :model="formUserList">
|
|
|
+ :rules="custRecAddrules"
|
|
|
+ ref="recRuleForm"
|
|
|
+ :model="customerRec">
|
|
|
<el-row :span="24">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label-width=120px label="客户名称">
|
|
@@ -466,55 +468,55 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="公司负责人">
|
|
|
+ <el-form-item label-width=120px label="公司负责人" prop="companyLeader">
|
|
|
<el-input v-model="customerRec.companyLeader" style="width: 100%"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row :span="24">
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="负责人手机号">
|
|
|
+ <el-form-item label-width=120px label="负责人手机号" prop="companyLeaderPhone">
|
|
|
<el-input v-model="customerRec.companyLeaderPhone" auto-complete="off" ></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="公司名称">
|
|
|
+ <el-form-item label-width=120px label="公司名称" prop="companyName">
|
|
|
<el-input v-model="customerRec.companyName" style="width: 100%"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row :span="24">
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="公司税号">
|
|
|
+ <el-form-item label-width=120px label="公司税号" prop="companyReferencenum">
|
|
|
<el-input v-model="customerRec.companyReferencenum" auto-complete="off" ></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="公司开户行">
|
|
|
+ <el-form-item label-width=120px label="公司开户行" prop="companyOpenbank">
|
|
|
<el-input v-model="customerRec.companyOpenbank" style="width: 100%"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row :span="24">
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="公司开户行账号">
|
|
|
+ <el-form-item label-width=120px label="公司开户行账号" prop="companyOpenbankAcc">
|
|
|
<el-input v-model="customerRec.companyOpenbankAcc" auto-complete="off" ></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="公司地址">
|
|
|
+ <el-form-item label-width=120px label="公司地址" prop="companyAdress">
|
|
|
<el-input v-model="customerRec.companyAdress" style="width: 100%" ></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row :span="24">
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="公司电话">
|
|
|
+ <el-form-item label-width=120px label="公司电话" prop="companyPhone">
|
|
|
<el-input v-model="customerRec.companyPhone" auto-complete="off" ></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="业务类型">
|
|
|
+ <el-form-item label-width=120px label="业务类型" prop="bussinessType">
|
|
|
<el-select v-model="customerRec.bussinessType" placeholder="业务类型" style="width: 100%">
|
|
|
<el-option
|
|
|
v-for="item in bussinessTypeList"
|
|
@@ -588,13 +590,13 @@
|
|
|
</el-row>
|
|
|
<el-row :span="24">
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="服务开始时间">
|
|
|
+ <el-form-item label-width=120px label="服务开始时间" prop="serviceStartTime">
|
|
|
<!-- <el-input v-model="customerRec.serviceStartTime" auto-complete="off" ></el-input> -->
|
|
|
<el-date-picker v-model="customerRec.serviceStartTime" type="date" value-format="yyyy-MM-dd HH:mm:SS" placeholder="服务开始时间"></el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label-width=120px label="服务结束时间">
|
|
|
+ <el-form-item label-width=120px label="服务结束时间" prop="serviceEndTime">
|
|
|
<!-- <el-input v-model="customerRec.serviceEndTime" auto-complete="off" ></el-input> -->
|
|
|
<el-date-picker v-model="customerRec.serviceEndTime" type="date" value-format="yyyy-MM-dd HH:mm:SS" placeholder="服务结束时间"></el-date-picker>
|
|
|
</el-form-item>
|
|
@@ -642,6 +644,7 @@ import XLSX from "xlsx";
|
|
|
customerName:'',
|
|
|
startTime:''
|
|
|
},
|
|
|
+ hightt:'0px',
|
|
|
coustomerTable:[],
|
|
|
coustomerCarTable:[],
|
|
|
customeRecQueryListTable:[],
|
|
@@ -654,11 +657,65 @@ import XLSX from "xlsx";
|
|
|
{id:5,name:"专线运输"},
|
|
|
{id:6,name:"其他"}],
|
|
|
serviceTypeList:[{id:1,name:"一级产品"},{id:2,name:"二级产品"},{id:3,name:"三级产品"}],
|
|
|
- custAddrules: {
|
|
|
+ custAddrules: {
|
|
|
customerName: [
|
|
|
{ required: true, message: '请输入', trigger: 'blur' },
|
|
|
{ min: 3, max: 100, message: '长度在 3 到 100个字符', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ customerCompany: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ { min: 3, max: 100, message: '长度在 3 到 300个字符', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ bussinessType: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
]
|
|
|
+ },
|
|
|
+ custRecAddrules: {
|
|
|
+ customerName: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyLeader: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyLeaderPhone: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyName: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyReferencenum: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyOpenbank: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyOpenbankAcc: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyAdress: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyPhone: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ bussinessType: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ companyType: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ operatingRangeType: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ serviceType: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ serviceStartTime: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ serviceEndTime: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ]
|
|
|
},
|
|
|
customerRec:{
|
|
|
|
|
@@ -714,6 +771,7 @@ import XLSX from "xlsx";
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
|
+ this.heightt = tableHeight;
|
|
|
this.loadData();
|
|
|
},
|
|
|
filters: {
|
|
@@ -753,12 +811,12 @@ import XLSX from "xlsx";
|
|
|
},
|
|
|
httpRequest(data){ // 没事儿就打印data看看呗 //这是限制上传文件类型
|
|
|
const isPFX = data.file.type === "application/pdf";
|
|
|
- const isLt2M = data.file.size / 1024 / 1024 < 2;
|
|
|
+ const isLt2M = data.file.size / 1024 / 1024 < 10;
|
|
|
|
|
|
if (!isPFX) {
|
|
|
this.$message.error("上传文件只能是pdf格式!");
|
|
|
}else if (!isLt2M) {
|
|
|
- this.$message.error("上传文件大小不能超过 2MB!");
|
|
|
+ this.$message.error("上传文件大小不能超过 10MB!");
|
|
|
}else{
|
|
|
// 转base64
|
|
|
this.getBase64(data.file).then(resBase64 => {
|
|
@@ -912,7 +970,10 @@ import XLSX from "xlsx";
|
|
|
this.customerRec = {};
|
|
|
},
|
|
|
async customerRecAdd(){
|
|
|
- const response = await this.$http.post(`customer/customerRecAdd`, this.customerRec);
|
|
|
+ console.log(this.customerRec);
|
|
|
+ this.$refs['recRuleForm'].validate(async (valid) => {
|
|
|
+ if(valid){
|
|
|
+ const response = await this.$http.post(`customer/customerRecAdd`, this.customerRec);
|
|
|
if(response.data.code === 0) {
|
|
|
this.loadData();
|
|
|
this.addCustomerRecShow1 = false;
|
|
@@ -926,6 +987,9 @@ import XLSX from "xlsx";
|
|
|
message: '保存失败:'+response.data.msg
|
|
|
});
|
|
|
}
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
},
|
|
|
generateWord(){
|
|
|
const token = sessionStorage.getItem('token');
|
|
@@ -982,7 +1046,7 @@ import XLSX from "xlsx";
|
|
|
const formData = new FormData();
|
|
|
formData.append('current', this.current);
|
|
|
formData.append('size', this.pagesize);
|
|
|
-
|
|
|
+ formData.append('customerName', this.formCondition.customerName);
|
|
|
const response = await this.$http.post(`customer/findCustomer`, formData);
|
|
|
if (response.data.code === 0) {
|
|
|
this.coustomerTable = response.data.data.records;
|
|
@@ -999,7 +1063,12 @@ import XLSX from "xlsx";
|
|
|
this.loadData();
|
|
|
// console.log(`当前页: ${val}`);
|
|
|
},
|
|
|
- exportExcel() {
|
|
|
+ async exportExcel() {
|
|
|
+ let curr = this.current;
|
|
|
+ let pagesize1 = this.pagesize;
|
|
|
+ this.current = 1;
|
|
|
+ this.pagesize = this.total;
|
|
|
+ await this.loadData();
|
|
|
// 设置当前日期
|
|
|
let time = new Date();
|
|
|
//console.log(time);
|
|
@@ -1026,6 +1095,9 @@ import XLSX from "xlsx";
|
|
|
} catch (e) {
|
|
|
if (typeof console !== "undefined") console.log(e, wbout);
|
|
|
}
|
|
|
+ this.current = curr;
|
|
|
+ this.pagesize = pagesize1;
|
|
|
+ this.loadData();
|
|
|
return wbout;
|
|
|
},
|
|
|
}
|