Commit fb679409 authored by 刘帅's avatar 刘帅

1.优化

parent 8c3238d8
...@@ -52,17 +52,17 @@ spring: ...@@ -52,17 +52,17 @@ spring:
driverClassName: com.mysql.cj.jdbc.Driver driverClassName: com.mysql.cj.jdbc.Driver
# jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562 # jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
# rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题) # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
url: jdbc:mysql://rm-hp3340490n5mw72tcto.mysql.huhehaote.rds.aliyuncs.com:3306/tianmaiweixiu_db?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true url: jdbc:mysql://10.100.102.83:3306/weixiu?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
username: tianmaiweixiu username: root
password: 7HTx9s@2wcbTQ@r1 password: 15afb87c52059344
# 从库数据源 # 从库数据源
slave: slave:
lazy: true lazy: true
type: ${spring.datasource.type} type: ${spring.datasource.type}
driverClassName: com.mysql.cj.jdbc.Driver driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://rm-hp3340490n5mw72tcto.mysql.huhehaote.rds.aliyuncs.com:3306/tianmaiweixiu_db?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true url: jdbc:mysql://10.100.102.83:3306/weixiu?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
username: tianmaiweixiu username: root
password: 7HTx9s@2wcbTQ@r1 password: 15afb87c52059344
# oracle: # oracle:
# type: ${spring.datasource.type} # type: ${spring.datasource.type}
# driverClassName: oracle.jdbc.OracleDriver # driverClassName: oracle.jdbc.OracleDriver
......
...@@ -66,7 +66,7 @@ spring: ...@@ -66,7 +66,7 @@ spring:
# 国际化资源文件路径 # 国际化资源文件路径
basename: i18n/messages basename: i18n/messages
profiles: profiles:
active: dev active: prod
# 文件上传 # 文件上传
servlet: servlet:
multipart: multipart:
......
...@@ -38,19 +38,16 @@ public class ErpCarBo extends BaseEntity { ...@@ -38,19 +38,16 @@ public class ErpCarBo extends BaseEntity {
/** /**
* 手机号 * 手机号
*/ */
@NotBlank(message = "手机号不能为空", groups = { AddGroup.class, EditGroup.class })
private String phone; private String phone;
/** /**
* 客户ID * 客户ID
*/ */
@NotNull(message = "客户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long clientId; private Long clientId;
/** /**
* 客户名称 * 客户名称
*/ */
@NotBlank(message = "客户名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String clientName; private String clientName;
/** /**
...@@ -67,19 +64,17 @@ public class ErpCarBo extends BaseEntity { ...@@ -67,19 +64,17 @@ public class ErpCarBo extends BaseEntity {
/** /**
* 驾驶证图片(逗号分割) * 驾驶证图片(逗号分割)
*/ */
@NotBlank(message = "驾驶证图片(逗号分割)不能为空", groups = { AddGroup.class, EditGroup.class })
private String drivingLicenseUrl; private String drivingLicenseUrl;
/** /**
* 车辆图片(逗号分割) * 车辆图片(逗号分割)
*/ */
@NotBlank(message = "车辆图片(逗号分割)不能为空", groups = { AddGroup.class, EditGroup.class })
private String carImgUrl; private String carImgUrl;
/** /**
* 车型ID * 车型ID
*/ */
@NotNull(message = "车型ID不能为空", groups = { AddGroup.class, EditGroup.class }) @NotNull(message = "车型不能为空", groups = { AddGroup.class, EditGroup.class })
private Long carTypeId; private Long carTypeId;
/** /**
......
...@@ -120,7 +120,6 @@ public class ErpRepairFormBo extends BaseEntity { ...@@ -120,7 +120,6 @@ public class ErpRepairFormBo extends BaseEntity {
/** /**
* 旧件带走(0不带 1带走) * 旧件带走(0不带 1带走)
*/ */
@NotNull(message = "旧件带走不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer isOldPart; private Integer isOldPart;
/** /**
......
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="90px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="90px">
<el-form-item label="车牌号" prop="plateNumber">
<el-input
v-model="queryParams.plateNumber"
placeholder="请输入车牌号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="客户类型" prop="clientType"> <el-form-item label="客户类型" prop="clientType">
<el-select v-model="queryParams.clientType" placeholder="请选择"> <el-select v-model="queryParams.clientType" placeholder="请选择">
<el-option v-for="item in dict.type.client_type" :key="item.value" :value="item.value" :label="item.label"></el-option> <el-option v-for="item in dict.type.client_type" :key="item.value" :value="item.value" :label="item.label"></el-option>
...@@ -14,14 +22,14 @@ ...@@ -14,14 +22,14 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="联系方式" prop="phone"> <!-- <el-form-item label="联系方式" prop="phone">-->
<el-input <!-- <el-input-->
v-model="queryParams.phone" <!-- v-model="queryParams.phone"-->
placeholder="请输入联系方式" <!-- placeholder="请输入联系方式"-->
clearable <!-- clearable-->
@keyup.enter.native="handleQuery" <!-- @keyup.enter.native="handleQuery"-->
/> <!-- />-->
</el-form-item> <!-- </el-form-item>-->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
...@@ -134,6 +142,11 @@ ...@@ -134,6 +142,11 @@
<el-input v-model="form.plateNumber" placeholder="请输入车牌牌照号" /> <el-input v-model="form.plateNumber" placeholder="请输入车牌牌照号" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-form-item label="车架号" prop="carVin">
<el-input v-model="form.carVin" placeholder="请输入车架号" />
</el-form-item>
</el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="手机号" prop="phone"> <el-form-item label="手机号" prop="phone">
<el-select v-model="form.phone" filterable :filter-method="getPhone" @change="setPhone"> <el-select v-model="form.phone" filterable :filter-method="getPhone" @change="setPhone">
...@@ -141,13 +154,14 @@ ...@@ -141,13 +154,14 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row :gettter="20">
<el-col :span="8"> <el-col :span="8">
<el-form-item label="客户名称" prop="clientName"> <el-form-item label="客户名称" prop="clientName">
<el-input v-model="form.clientName" placeholder="请输入客户名称" disabled /> <el-input v-model="form.clientName" placeholder="请输入客户名称" disabled />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row :gettter="20">
<el-col :span="8"> <el-col :span="8">
<el-form-item label="客户类型" prop="clientType"> <el-form-item label="客户类型" prop="clientType">
<el-select v-model="form.clientType" placeholder="请选择" disabled style="width: 100%;"> <el-select v-model="form.clientType" placeholder="请选择" disabled style="width: 100%;">
...@@ -160,11 +174,6 @@ ...@@ -160,11 +174,6 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-form-item label="车架号" prop="carVin">
<el-input v-model="form.carVin" placeholder="请输入车架号" />
</el-form-item>
</el-col>
</el-row> </el-row>
<el-row :gettter="20"> <el-row :gettter="20">
<el-col :span="8"> <el-col :span="8">
...@@ -411,25 +420,25 @@ export default { ...@@ -411,25 +420,25 @@ export default {
{ required: true, message: "车牌号不能为空", trigger: "blur" } { required: true, message: "车牌号不能为空", trigger: "blur" }
], ],
phone: [ phone: [
{ required: true, message: "手机号不能为空", trigger: "blur" } { required: false, message: "手机号不能为空", trigger: "blur" }
], ],
clientId: [ clientId: [
{ required: true, message: "客户ID不能为空", trigger: "blur" } { required: true, message: "客户不能为空", trigger: "blur" }
], ],
clientName: [ clientName: [
{ required: true, message: "客户名称不能为空", trigger: "blur" } { required: false, message: "客户名称不能为空", trigger: "blur" }
], ],
carVin: [ carVin: [
{ required: true, message: "车架号不能为空", trigger: "blur" } { required: true, message: "车架号不能为空", trigger: "blur" }
], ],
drivingLicenseUrl: [ drivingLicenseUrl: [
{ required: true, message: "车辆行驶证图片不能为空", trigger: "blur" } { required: false, message: "车辆行驶证图片不能为空", trigger: "blur" }
], ],
carImgUrl: [ carImgUrl: [
{ required: true, message: "车辆图片不能为空", trigger: "blur" } { required: false, message: "车辆图片不能为空", trigger: "blur" }
], ],
carTypeCode: [ carTypeCode: [
{ required: true, message: "车型编码不能为空", trigger: "blur" } { required: true, message: "车型编码不能为空", trigger: "change" }
], ],
}, },
phoneList: [], phoneList: [],
...@@ -577,11 +586,7 @@ export default { ...@@ -577,11 +586,7 @@ export default {
}, },
getPhone(e){ getPhone(e){
console.log(e); console.log(e);
listClient({ listClient({pageSize: 40, pageNum: 1, phone: e}).then(res=>{
pageSize: 40,
pageNum: 1,
phone: e
}).then(res=>{
let arr=[] let arr=[]
res.rows.forEach(item=>{ res.rows.forEach(item=>{
if(item.phone){ if(item.phone){
......
...@@ -18,16 +18,21 @@ ...@@ -18,16 +18,21 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="8"> <el-col :span="8">
<el-form-item label="车辆牌照号" prop="carId"> <el-form-item label="车辆牌照号" prop="carId">
<el-select v-model="form.carId" filterable style="width: 100%;" @change="e=>{carIdChange(e,)}" :disabled="flag == 2"> <el-select v-model="form.carId" filterable remote :remote-method="carRemoteMethod" style="width: 100%;" @change="e=>{carIdChange(e,)}" :disabled="flag == 2">
<el-option v-for="(item,index) in carList" :key="index" :label="item.plateNumber" :value="item.id" /> <el-option v-for="(item,index) in carList" :key="index" :label="item.plateNumber" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="8">-->
<!-- <el-form-item label="客户名称" prop="clientId">-->
<!-- <el-select v-model="form.clientId" filterable style="width: 100%;" disabled @change="e=>{clientIdChange(e,'clientId')}">-->
<!-- <el-option v-for="(item,index) in clientList" :key="index" :label="item.name" :value="item.id" />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<el-col :span="8"> <el-col :span="8">
<el-form-item label="客户名称" prop="clientId"> <el-form-item label="客户名称" prop="clientName">
<el-select v-model="form.clientId" filterable style="width: 100%;" disabled @change="e=>{clientIdChange(e,'clientId')}"> <el-input v-model="form.clientName" placeholder="请输入客户名称" disabled />
<el-option v-for="(item,index) in clientList" :key="index" :label="item.name" :value="item.id" />
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
...@@ -736,6 +741,21 @@ export default { ...@@ -736,6 +741,21 @@ export default {
this.carList = res.rows this.carList = res.rows
}) })
}, },
// 远程搜索方法
carRemoteMethod(query) {
if (query !== '') {
try {
listCar({ pageNum: 1, pageSize: 99, plateNumber: query }).then(res=>{
this.carList = res.rows
})
} catch (error) {
console.error('搜索失败:', error);
this.$message.error('搜索失败');
}
} else {
this.carList = [];
}
},
getClientList() { getClientList() {
listClient({ pageNum: 1, pageSize: 99 }).then(res=>{ listClient({ pageNum: 1, pageSize: 99 }).then(res=>{
this.clientList = res.rows this.clientList = res.rows
...@@ -779,14 +799,18 @@ export default { ...@@ -779,14 +799,18 @@ export default {
this.form.carId = item.id; this.form.carId = item.id;
let clientForm = ['plateNumber','clientName','phone','clientType','clientId'] let clientForm = ['plateNumber','clientName','phone','clientType','clientId']
clientForm.forEach(item1=>{ clientForm.forEach(item1=>{
this.form[item1]='' + item[item1] if (item[item1]) {
this.form[item1]='' + item[item1]
}
}) })
if (item.carTypeId) { if (item.carTypeId) {
let carTypeForm = ['carVin','carTypeCode','carBrand','carModel','carConfiguration','carColour','expendType','chassisNumber','motorNumber'] let carTypeForm = ['carVin','carTypeCode','carBrand','carModel','carConfiguration','carColour','expendType','chassisNumber','motorNumber']
this.form.vehicleModelId = item.carTypeId; this.form.vehicleModelId = item.carTypeId;
getVehicleModel(item.carTypeId).then(res=>{ getVehicleModel(item.carTypeId).then(res=>{
carTypeForm.forEach(item1=>{ carTypeForm.forEach(item1=>{
this.form[item1]='' + res.data[item1] if (res.data[item1]) {
this.form[item1]='' + res.data[item1]
}
}) })
}) })
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment