Compare commits
9 Commits
prod-25-04
...
prod-25-01
Author | SHA1 | Date | |
---|---|---|---|
5e9a9bf84d | |||
8fb9d8eac6 | |||
0210e3dcaf | |||
4fa732db43 | |||
9aecb8a8f2 | |||
2a925e120b | |||
66aa84a753 | |||
8e6f98e71d | |||
aaf68efb24 |
@ -30,10 +30,10 @@
|
||||
}
|
||||
</script>
|
||||
<script src="https://webapi.amap.com/maps?v=1.4.15&key=2560bbf04daef66c810c5e6a97e8c508&plugin=AMap.Polyline"></script>
|
||||
<script src="https://unpkg.com/vconsole@latest/dist/vconsole.min.js"></script>
|
||||
<!-- <script src="https://unpkg.com/vconsole@latest/dist/vconsole.min.js"></script>-->
|
||||
<script>
|
||||
// VConsole 默认会挂载到 `window.VConsole` 上
|
||||
let vConsole = new window.VConsole();
|
||||
// let vConsole = new window.VConsole();
|
||||
(function (doc, win) {
|
||||
console.log("==window.location.pathname===",window.location.pathname)
|
||||
let docEl = doc.documentElement
|
||||
|
@ -72,7 +72,6 @@ export const myMixins = {
|
||||
methods();
|
||||
}
|
||||
setTimeout(() => {
|
||||
console.log("shengxiaoxi")
|
||||
that.noClick = true;
|
||||
}, 3000)
|
||||
} else {
|
||||
|
@ -6,15 +6,15 @@
|
||||
<div class="metersWrap">
|
||||
<div class="item" v-show="supplierSettlementType != 1">
|
||||
<div class="leftKiloMeters">AB段公里数</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.reportMileageAb"/>公里</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.reportMileageAb"/>公里</div>
|
||||
</div>
|
||||
<div class="item" v-show="supplierSettlementType == 1 || supplierSettlementType == 2 || supplierSettlementType == 3 || supplierSettlementType == 4">
|
||||
<div class="leftKiloMeters">BC段公里数</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.reportMileageBc"/>公里</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.reportMileageBc"/>公里</div>
|
||||
</div>
|
||||
<div class="item" v-show=" supplierSettlementType == 3 || supplierSettlementType == 4">
|
||||
<div class="leftKiloMeters">CA段公里数</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.reportMileageCa"/>公里</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.reportMileageCa"/>公里</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -24,15 +24,15 @@
|
||||
<div class="metersWrap">
|
||||
<div class="item" v-show="supplierSettlementType != 1">
|
||||
<div class="leftKiloMeters">AB段路桥费</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.bridgeAmountAb"/>元</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.bridgeAmountAb"/>元</div>
|
||||
</div>
|
||||
<div class="item" v-show="supplierSettlementType == 1 || supplierSettlementType == 2 || supplierSettlementType == 3 || supplierSettlementType == 4">
|
||||
<div class="leftKiloMeters">BC段路桥费</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.bridgeAmountBc"/>元</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.bridgeAmountBc"/>元</div>
|
||||
</div>
|
||||
<div class="item" v-show=" supplierSettlementType == 3 || supplierSettlementType == 4">
|
||||
<div class="leftKiloMeters">CA段路桥费</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.bridgeAmountCa"/>元</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.bridgeAmountCa"/>元</div>
|
||||
</div>
|
||||
</div>
|
||||
</div >
|
||||
@ -42,23 +42,23 @@
|
||||
<div class="metersWrap">
|
||||
<div class="item" >
|
||||
<div class="leftKiloMeters">小轮个数</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.tyreNumber" @input="handleInput"/>个</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.tyreNumber" @input="handleInput"/>个</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<div class="leftKiloMeters">等候费</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.waitAmount"/>元</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.waitAmount"/>元</div>
|
||||
</div>
|
||||
<div class="item" >
|
||||
<div class="leftKiloMeters">困境费</div>
|
||||
<div class="rightInput"><input type="number" v-model="form.dilemmaFee"/>元</div>
|
||||
<div class="rightInput"><input type="number" :disabled="!taskCostShow" v-model="form.dilemmaFee"/>元</div>
|
||||
</div>
|
||||
<div class="item blueColor" >
|
||||
<div class="leftKiloMeters">收取客户金额</div>
|
||||
<div class="rightInput blueColor"><input class="blueColor" type="number" v-model="form.customerAmount"/>元</div>
|
||||
<div class="rightInput blueColor"><input class="blueColor" type="number" :disabled="!taskCostShow" v-model="form.customerAmount"/>元</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="btn">
|
||||
<div class="btn" v-if="taskCostShow || finishLt7">
|
||||
<button @click="submit">提交</button>
|
||||
</div>
|
||||
</div>
|
||||
@ -86,7 +86,9 @@ export default {
|
||||
waitAmount:'',
|
||||
dilemmaFee:'',
|
||||
customerAmount:'',
|
||||
taskFlowId:''
|
||||
taskFlowId:'',
|
||||
auditStatus:'',
|
||||
finishTime:'',
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -97,6 +99,14 @@ export default {
|
||||
this.orderCode = urlParams.get('orderCode')
|
||||
await this.getDetail()
|
||||
},
|
||||
computed:{
|
||||
taskCostShow() {
|
||||
return this.form.auditStatus?.code && !([3, 4, 6].includes(this.form.auditStatus.code))
|
||||
},
|
||||
finishLt7(){
|
||||
return !this.form.finishTime || (this.form.finishTime && new Date().getTime() - new Date(this.form.finishTime).getTime() <= 7 * 24 * 60 * 60 * 1000)
|
||||
},
|
||||
},
|
||||
methods:{
|
||||
handleInput(event) {
|
||||
const newValue = parseInt(event.target.value, 10);
|
||||
@ -118,7 +128,6 @@ export default {
|
||||
})
|
||||
leftCopy(this.form,{...res.data});
|
||||
this.supplierSettlementType= res.data.supplierSettlementType?.code
|
||||
// this.form.taskFlowId =1
|
||||
},
|
||||
async updatSettlement(){
|
||||
let result =await updateOrderSettlement({
|
||||
|
@ -73,6 +73,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Decimal } from 'decimal.js';
|
||||
import { Dialog } from "vant";
|
||||
import { myMixins } from "@/utils/myMixins"
|
||||
import { uploadInvoice, getBillingInfo, deleteInvoice, createBatch } from "@/api/mine"
|
||||
@ -120,7 +121,7 @@
|
||||
invoiceTotal () {
|
||||
let total = 0;
|
||||
this.list?.map(item => {
|
||||
total += item.invoiceMoney
|
||||
total = new Decimal(total).plus(new Decimal(item.invoiceMoney)).toNumber()
|
||||
})
|
||||
return total
|
||||
}
|
||||
|
@ -110,6 +110,28 @@
|
||||
</el-option>
|
||||
</el-select>
|
||||
|
||||
</div>
|
||||
<div class="itemContent">
|
||||
<div class="titleType">
|
||||
<span>牌照</span>
|
||||
</div>
|
||||
<el-select
|
||||
v-model="vehicleLicense"
|
||||
disabled
|
||||
value-key="name"
|
||||
class="elSelect"
|
||||
collapse-tags="collapse-tags"
|
||||
placeholder="请选择" style="width: 55%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in vehicleLicenseOptions"
|
||||
:key="item.name"
|
||||
:label="item.name"
|
||||
:value="item.value"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
|
||||
</div>
|
||||
<div class="lineBot"></div>
|
||||
<div class="itemContent">
|
||||
@ -154,7 +176,7 @@
|
||||
<span class="line"></span>
|
||||
</div>
|
||||
<div :ref="'checkboxGroup' + index" class="checkbox-group">
|
||||
<van-checkbox-group v-model="serviceIds" v-for="(item2,index2) in item.children" :key="index2" class="radioWrap" >
|
||||
<van-checkbox-group v-model="serviceIds" v-for="(item2,index2) in item.children" :key="index2" class="radioWrap">
|
||||
<van-checkbox class="item" :name="item2.id">{{item2.name }}</van-checkbox>
|
||||
</van-checkbox-group>
|
||||
</div>
|
||||
@ -203,6 +225,8 @@ export default {
|
||||
vehicleLicenseInfo: {},
|
||||
vehicleLicenseBackOcrFlag: false, // 行驶证副页 修改时默认不需要 ocr识别
|
||||
isMultiple: false, // 是否支持多选
|
||||
vehicleLicense:'',//牌照
|
||||
vehicleFrontLicensePlate:'',//车头照车牌号码
|
||||
vehicleTypes:[{
|
||||
name: '小修车',
|
||||
value: 1
|
||||
@ -236,6 +260,22 @@ export default {
|
||||
value: 10 },
|
||||
|
||||
],
|
||||
vehicleLicenseOptions: [{
|
||||
name: '蓝牌',
|
||||
value: 1
|
||||
}, {
|
||||
name: '黄牌',
|
||||
value: 2
|
||||
}, {
|
||||
name: '新能源',
|
||||
value: 3
|
||||
}, {
|
||||
name: '临牌',
|
||||
value: 4
|
||||
}, {
|
||||
name: '其他',
|
||||
value: 5
|
||||
}]
|
||||
}
|
||||
},
|
||||
watch:{
|
||||
@ -281,6 +321,19 @@ export default {
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
getVehicleLicense(color) {
|
||||
if( color == '蓝' ) {
|
||||
this.vehicleLicense = 1
|
||||
} else if(color == '黄') {
|
||||
this.vehicleLicense = 2
|
||||
} else if(color == '临牌') {
|
||||
this.vehicleLicense = 4
|
||||
} else if(color.includes('绿')) {
|
||||
this.vehicleLicense = 3
|
||||
} else {
|
||||
this.vehicleLicense = 5
|
||||
}
|
||||
},
|
||||
async vehicleLicenseFrontHandler(file) { // 上传 行驶证首页
|
||||
const formData = new FormData();
|
||||
formData.append("file" , file.file);
|
||||
@ -307,6 +360,16 @@ export default {
|
||||
formData.append("file" , file.file);
|
||||
let res = await uploadImage(formData);
|
||||
this.vehicleFrontPhoto = res.data;
|
||||
await this.ocrCarFrontHandler()
|
||||
},
|
||||
async ocrCarFrontHandler() { // 车辆正面 orc 识别
|
||||
let res = await ocrHandler({
|
||||
ocrType: 10,
|
||||
imageUrl: this.vehicleFrontPhoto,
|
||||
cardSide: 'FRONT'
|
||||
});
|
||||
this.vehicleFrontLicensePlate=res.data?.number
|
||||
this.getVehicleLicense(res.data.color)
|
||||
},
|
||||
async vehicleOcrHandler() { // 行驶证首页 ocr 识别
|
||||
this.vehicleLicenseInfo.licensePlateNumber = '';
|
||||
@ -405,6 +468,7 @@ export default {
|
||||
vehicleId:this.id
|
||||
})
|
||||
let result=res.data;
|
||||
console.log("result",result)
|
||||
this.id=result.vehicleId
|
||||
this.carNum=result.plateNumber
|
||||
this.isJoin=result.hasPolymerization.code
|
||||
@ -417,6 +481,8 @@ export default {
|
||||
this.vehicleFrontPhoto = result.vehicleFrontPhoto;
|
||||
this.vehicleLicenseInfo = result.vehicleLicenseInfo;
|
||||
this.vehicleLicenseCarPhoto = result.vehicleLicenseCarPhoto;
|
||||
this.vehicleLicense = result.vehicleLicense;
|
||||
this.vehicleFrontLicensePlate = result.vehicleFrontLicensePlate;
|
||||
if( this.vehicleLicenseFront ) {
|
||||
this.vehicleLicenseFrontList = [{ url : this.vehicleLicenseFront }];
|
||||
}
|
||||
@ -446,7 +512,7 @@ export default {
|
||||
this.$toast('行驶证车辆照片页不能为空')
|
||||
return
|
||||
}
|
||||
if( !this.vehicleLicenseBack ) {
|
||||
if( !this.vehicleFrontPhoto ) {
|
||||
this.$toast('车头照片不能为空')
|
||||
return
|
||||
}
|
||||
@ -462,7 +528,11 @@ export default {
|
||||
this.$toast('车辆类型不能为空')
|
||||
return
|
||||
}
|
||||
await saveVehicle({
|
||||
if(this.selectedOption?.length==1 && this.selectedOption.includes(1)){//选择小修车时需清除原本的拖车服务类型
|
||||
let data=this.oldSupplierServiceList.filter(item => item.name ==='拖车服务')
|
||||
this.serviceIds = this.serviceIds.filter(item => !data[0].children.some(obj => obj.id === item));
|
||||
}
|
||||
await saveVehicle({
|
||||
vehicleId:this.id ? this.id : '',
|
||||
plateNumber:this.carNum ? this.carNum :'',
|
||||
vehicleType:this.selectedOption?.length>0 ? this.selectedOption.join(',') : '',
|
||||
@ -473,6 +543,8 @@ export default {
|
||||
vehicleFrontPhoto: this.vehicleFrontPhoto,
|
||||
vehicleLicenseInfo: this.vehicleLicenseInfo,
|
||||
vehicleLicenseCarPhoto: this.vehicleLicenseCarPhoto,
|
||||
vehicleLicense: this.vehicleLicense,
|
||||
vehicleFrontLicensePlate:this.vehicleFrontLicensePlate,
|
||||
})
|
||||
if(this.id){
|
||||
this.$toast('修改成功')
|
||||
|
Reference in New Issue
Block a user