diff --git a/src/assets/secondHandCar/icon_saled.png b/src/assets/secondHandCar/icon_saled.png new file mode 100644 index 00000000..77ca27b0 Binary files /dev/null and b/src/assets/secondHandCar/icon_saled.png differ diff --git a/src/assets/secondHandCar/icon_zdOwner.png b/src/assets/secondHandCar/icon_zdOwner.png new file mode 100644 index 00000000..8840d9fc Binary files /dev/null and b/src/assets/secondHandCar/icon_zdOwner.png differ diff --git a/src/views/secondHandCar/carSource.vue b/src/views/secondHandCar/carSource.vue index fd6256ea..e17042ff 100644 --- a/src/views/secondHandCar/carSource.vue +++ b/src/views/secondHandCar/carSource.vue @@ -25,6 +25,8 @@ :text="'行驶证照片'" :multiple="false" :files.sync="vehicleLicensePhotoList"/> + @@ -40,13 +42,13 @@
*车辆类型 - 平板拖车 + 平板拖车 地库车 牵引车 随车吊
-
+
*落板方式 全落地 @@ -63,6 +65,13 @@ 国6
+
+ *刹车系统 + + 气刹 + 油刹 + +
*所在城市
- *售价(含税) + *售价(含税)
+
+ *底盘品牌 + + +
@@ -163,6 +181,7 @@ export default { type:1, vehicleLicensePhoto:'', vehicleAnglePhoto:'', + vehicleRearPhoto: '', otherPhoto:'', licenseType:'', brandModel:'', @@ -178,6 +197,8 @@ export default { contactNumber:'', minPrice:'', desc:'', + underpanBrand: '', + brakeSystem: '', }, radio: 0, type:'',//1为发布&修改 2为审核 @@ -191,6 +212,7 @@ export default { areaName:'', vehicleLicensePhotoList:[], vehicleAnglePhotoList:[], + vehicleRearPhotoList: [], otherImgSrcList:[], otherImgSrc:[], status:'', @@ -225,6 +247,7 @@ export default { } this.vehicleLicensePhotoList=[{url:res.data?.vehicleLicensePhoto}] this.vehicleAnglePhotoList=[{url:res.data?.vehicleAnglePhoto}] + this.vehicleRearPhotoList = [{ url: res.data?.vehicleRearPhoto }] } let carSourceFormInfo=localStorage.getItem("carSourceFormInfo") ? JSON.parse(localStorage.getItem("carSourceFormInfo")) : '' if(!carSourceFormInfo){ @@ -242,6 +265,9 @@ export default { } if(this.form.vehicleAnglePhoto){ this.vehicleAnglePhotoList=[{url:this.form.vehicleAnglePhoto}] + } + if( this.form.vehicleRearPhoto ) { + this.vehicleRearPhotoList = [{url: this.form.vehicleRearPhoto}] } // console.log("carSourceFormInfo",carSourceFormInfo) if(carSourceFormInfo.otherImgSrc0){ @@ -319,7 +345,7 @@ export default { this.form.vinCode=data.info.vin this.form.plateNumber=data.info.plateNo this.form.registerDate=data.info.registerDate +' 00:00:00' - this.form.vehicleType=data.info.vehicleType + // this.form.vehicleType=data.info.vehicleType }, deleteImg1(){ this.form.vehicleLicensePhoto='' @@ -336,6 +362,13 @@ export default { getOtherImg(data){ this.otherImgSrc.push(data.url) }, + getBackPhoto(data) { + console.log("datadata",data) + this.form.vehicleRearPhoto = data.url + }, + deleteImgBack() { + this.form.vehicleRearPhoto = ''; + }, handleDeleteOtherImg(file,index) { this.otherImgSrc = this.otherImgSrc.filter((item,i) => index !== i); this.otherImgSrcList = this.otherImgSrcList.filter((item,i) => index !== i); @@ -354,15 +387,19 @@ export default { this.$toast('车辆45度不能为空') return } + if(!this.form.vehicleRearPhoto) { + this.$toast('车辆后方45度不能为空') + return + } let flag=this.validateHandle() if(flag){ this.$toast(flag) return } - if (this.form.vehicleType=='拖车' && !this.form.boardType) { + if (this.form.vehicleType=='平板拖车' && !this.form.boardType) { this.$toast('落板方式不能为空') return - }else if(this.form.vehicleType !=='拖车'){ + }else if(this.form.vehicleType !=='平板拖车'){ this.form.boardType='' } let rule = this.validationRules.find(item => @@ -404,15 +441,19 @@ export default { this.$toast('车辆45度不能为空') return } + if(!this.form.vehicleRearPhoto) { + this.$toast('车辆后方45度不能为空') + return + } let flag=this.validateHandle() if(flag){ this.$toast(flag) return } - if (this.form.vehicleType=='拖车' && !this.form.boardType) { + if (this.form.vehicleType=='平板拖车' && !this.form.boardType) { this.$toast('落板方式不能为空') return - }else if(this.form.vehicleType !=='拖车'){ + }else if(this.form.vehicleType !=='平板拖车'){ this.form.boardType='' } let rule = this.validationRules.find(item => @@ -472,10 +513,12 @@ export default { return [ { value: this.form.vehicleType, name: '车辆类型不能为空' }, { value: this.form.emissionStandard, name: '排放标准不能为空' }, + { value: this.form.brakeSystem, name: '刹车系统不能为空' }, { value: this.form.areaCode, name: '所在城市不能为空' }, { value: this.form.mileage, name: '行驶里程不能为空' }, { value: this.form.contactNumber, name: '联系方式不能为空' }, { value: this.form.minPrice, name: '售价不能为空' }, + { value: this.form.underpanBrand, name: '底盘品牌不能为空' }, ]; }, }, diff --git a/src/views/secondHandCar/components/upload-common.vue b/src/views/secondHandCar/components/upload-common.vue index bd9e4b48..5d17dcf4 100644 --- a/src/views/secondHandCar/components/upload-common.vue +++ b/src/views/secondHandCar/components/upload-common.vue @@ -89,6 +89,8 @@ export default { this.$emit("delete1"); } else if (this.text === "车辆45度照") { this.$emit("delete2"); + } else if(this.text == '车辆后方45度') { + this.$emit("delete4"); } else { console.log("file, detail", file, detail) this.$emit("delete3", file, detail.index); @@ -122,6 +124,8 @@ export default { let num = this.getVehicleLicense(result.data.color) let data = {url: res?.data, colorStr: result.data.color, colorStatus: num, plateType: result.data.number} this.$emit('success2', data) + } else if(this.text == '车辆后方45度') { + this.$emit('success4', {url: res?.data, uid: file.uid}) } else { this.$emit('success3', {url: res?.data, uid: file.uid}) } @@ -253,4 +257,4 @@ export default { ::v-deep .van-uploader__preview-delete-icon { display: none !important; /* 强制隐藏伪元素 */ } - \ No newline at end of file + diff --git a/src/views/secondHandCar/forSale.vue b/src/views/secondHandCar/forSale.vue index 7f544e8c..f5f9e7b3 100644 --- a/src/views/secondHandCar/forSale.vue +++ b/src/views/secondHandCar/forSale.vue @@ -150,6 +150,9 @@ export default { if(res.data.otherPhoto){ this.imgSrcList=res.data.otherPhoto.split(',') || [] } + if( res?.data?.vehicleRearPhoto ) { + this.imgSrcList.unshift(res?.data?.vehicleRearPhoto) + } this.imgSrcList.unshift(res?.data?.vehicleAnglePhoto) } }, diff --git a/src/views/secondHandCar/indexList.vue b/src/views/secondHandCar/indexList.vue index 13a0fe10..44e089e4 100644 --- a/src/views/secondHandCar/indexList.vue +++ b/src/views/secondHandCar/indexList.vue @@ -73,6 +73,14 @@ :value="item.value"> + + + +
@@ -85,6 +93,8 @@
+ +
{{item.vehicleType?.substring(0,2)}}
@@ -154,6 +164,10 @@ export default { this.setSearchVal(); this.getList() }, + proprietary() { + this.setSearchVal(); + this.getList() + } }, data(){ return{ @@ -171,6 +185,7 @@ export default { priceSort:'', emissionStandard:'', boardType:'', + proprietary: '', licenseTypeOption:[ {value:2,label:'黄牌'},{value:3,label:'绿牌'},{value:1,label:'蓝牌'}, ], @@ -186,6 +201,7 @@ export default { boardTypeOption:[ {value:1,label:'全落地'},{value:2,label:'斜落一体'},{value:3,label:'普通斜板'},{value:9,label:'不限'} ], + proprietaryOption: [{value: 1, label: '中道自营'}, {value: 0, label: '服务商发布'}], poupShow:false, suggestContent:'', } @@ -255,6 +271,7 @@ export default { sessionStorage.setItem('licenseType',String(this.licenseType)); sessionStorage.setItem('emissionStandard',String(this.emissionStandard)); sessionStorage.setItem('boardType',String(this.boardType)); + sessionStorage.setItem('proprietary',String(this.proprietary)); }, getSearchVal(){ this.activeTab = Number(sessionStorage.getItem('indexActiveTab')) || 0; @@ -264,6 +281,7 @@ export default { this.licenseType = Number(sessionStorage.getItem('licenseType')) || ''; this.emissionStandard = Number(sessionStorage.getItem('emissionStandard')) || ''; this.boardType = Number(sessionStorage.getItem('boardType')) || ''; + this.proprietary = Number(sessionStorage.getItem('proprietary')) || ''; }, goMine(){//我的发布 this.$router.push({ name: "mineRelease"}) @@ -320,6 +338,7 @@ export default { priceSort:this.priceSort, boardType:this.boardType, emissionStandard:this.emissionStandard, + proprietary: this.proprietary }) this.total=res.total if(this.pageNum == 1){// 第一页直接赋值 @@ -434,23 +453,23 @@ export default { justify-content: space-around; padding-bottom: 10px; .customSel { - width: 69px; + width: 60px; height: 25px; background: #F5F5F5; border-radius: 4px; - font-size: 12px; + font-size: 10px; color: #323233; ::v-deep .el-input__inner{ padding: 0 2px; height: 25px; - font-size: 12px; + font-size: 10px; background: #F5F5F5; border-radius: 4px; border: none; } ::v-deep .el-input__icon{ line-height: 25px; - font-size: 12px; + font-size: 10px; width: 18px; color: #2A5094; } @@ -504,6 +523,9 @@ export default { cursor: pointer; } .left{ + width: 115px; + height: 77px; + position: relative; .img, .qiugou{ width: 115px; height: 77px; @@ -522,6 +544,20 @@ export default { object-fit: cover; /* 保持比例填充容器,裁剪多余部分 */ object-position: center; /* 居中显示 */ } + .owner_logo { + width: 60px; + height: 23px; + position: absolute; + left: -4px; + top: -3px; + } + .saled_logo { + width: 76px; + height: 48px; + position: absolute; + left: 24px; + top: 16px; + } } .right{ .title{