工单报备,工单详情
This commit is contained in:
84
package-lock.json
generated
84
package-lock.json
generated
@ -2030,49 +2030,6 @@
|
||||
"webpack-merge": "^5.7.3",
|
||||
"webpack-virtual-modules": "^0.4.2",
|
||||
"whatwg-fetch": "^3.6.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vue/vue-loader-v15": {
|
||||
"version": "npm:vue-loader@15.10.1",
|
||||
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.1.tgz",
|
||||
"integrity": "sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/component-compiler-utils": "^3.1.0",
|
||||
"hash-sum": "^1.0.2",
|
||||
"loader-utils": "^1.1.0",
|
||||
"vue-hot-reload-api": "^2.3.0",
|
||||
"vue-style-loader": "^4.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"hash-sum": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
|
||||
"integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"json5": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
|
||||
"integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"minimist": "^1.2.0"
|
||||
}
|
||||
},
|
||||
"loader-utils": {
|
||||
"version": "1.4.2",
|
||||
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
|
||||
"integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"big.js": "^5.2.2",
|
||||
"emojis-list": "^3.0.0",
|
||||
"json5": "^1.0.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@vue/cli-shared-utils": {
|
||||
@ -2237,6 +2194,47 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"@vue/vue-loader-v15": {
|
||||
"version": "npm:vue-loader@15.10.1",
|
||||
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.1.tgz",
|
||||
"integrity": "sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/component-compiler-utils": "^3.1.0",
|
||||
"hash-sum": "^1.0.2",
|
||||
"loader-utils": "^1.1.0",
|
||||
"vue-hot-reload-api": "^2.3.0",
|
||||
"vue-style-loader": "^4.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"hash-sum": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
|
||||
"integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==",
|
||||
"dev": true
|
||||
},
|
||||
"json5": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
|
||||
"integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"minimist": "^1.2.0"
|
||||
}
|
||||
},
|
||||
"loader-utils": {
|
||||
"version": "1.4.2",
|
||||
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
|
||||
"integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"big.js": "^5.2.2",
|
||||
"emojis-list": "^3.0.0",
|
||||
"json5": "^1.0.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@vue/web-component-wrapper": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@vue/web-component-wrapper/-/web-component-wrapper-1.3.0.tgz",
|
||||
|
45
src/api/mine.js
Normal file
45
src/api/mine.js
Normal file
@ -0,0 +1,45 @@
|
||||
import request from '@/utils/http'
|
||||
|
||||
//车辆列表
|
||||
export function supplierVehicleList(data){
|
||||
return request({
|
||||
url:'/supplierAppV2/dispatchApp/user/supplierVehicleList',
|
||||
method:'POST',
|
||||
contentTye:'application/json',
|
||||
data
|
||||
})
|
||||
}
|
||||
//添加或修改车辆信息
|
||||
export function saveVehicle(data){
|
||||
return request({
|
||||
url:'/supplierAppV2/dispatchApp/user/saveVehicle',
|
||||
method:'POST',
|
||||
contentType:'application/json',
|
||||
data
|
||||
})
|
||||
}
|
||||
// 获取车辆信息(用于修改时回显的值,只需传vehicleId)
|
||||
export function getInfoById(data){
|
||||
return request({
|
||||
url:'/supplierAppV2/dispatchApp/user/getInfoById',
|
||||
method:'POST',
|
||||
contentType:'application/json',
|
||||
data
|
||||
})
|
||||
}
|
||||
//删除车辆信息(只需传vehicleId)
|
||||
export function deleteVehicle(data){
|
||||
return request({
|
||||
url:'/supplierAppV2/dispatchApp/user/deleteVehicle',
|
||||
method:'POST',
|
||||
contentType:'application/json',
|
||||
data
|
||||
})
|
||||
}
|
||||
//车辆类型列表
|
||||
export function vehicleTypeList(){
|
||||
return request({
|
||||
url:'/supplierAppV2/dispatchApp/user/vehicleTypeList',
|
||||
method:'POST'
|
||||
})
|
||||
}
|
@ -34,3 +34,12 @@ export function orderReporting(data){
|
||||
data
|
||||
})
|
||||
}
|
||||
// 修改结算信息
|
||||
export function updateOrderSettlement(data){
|
||||
return request({
|
||||
url:'/supplierAppV2/dispatchApp/order/updateOrderSettlement',
|
||||
method:'POST',
|
||||
contentType:'application/json',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
@ -72,9 +72,9 @@ const routes = [
|
||||
}
|
||||
},
|
||||
{
|
||||
path: "/carManage",
|
||||
name: 'carManage',
|
||||
component: () => import('@/views/index/carManage'),
|
||||
path: "/vehicleManage",
|
||||
name: 'vehicleManage',
|
||||
component: () => import('@/views/index/vehicleManage.vue'),
|
||||
meta: {
|
||||
title: '车辆管理'
|
||||
}
|
||||
|
@ -1,6 +1,5 @@
|
||||
import axios from "axios";
|
||||
import qs from 'qs'
|
||||
import { Toast } from 'vant'
|
||||
|
||||
// console.log('process.env.VUE_APP_BASE_API', process.env.VUE_APP_BASE_API)
|
||||
|
||||
@ -12,43 +11,39 @@ const service = axios.create({
|
||||
timeout: 10000
|
||||
})
|
||||
service.interceptors.request.use(
|
||||
config => {
|
||||
config.data = config.contentType ? config.data : qs.stringify(config.data)
|
||||
config.headers['Content-Type'] = config.contentType || 'application/x-www-form-urlencoded'
|
||||
// 在发送请求之前做一些操作,如添加token到请求头
|
||||
const token='eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJzemwiLCJhdWQiOlsic3VwcGxpZXItYXBwIl0sIm5iZiI6MTY5MTU1NzIzNSwidXNlcl9pbmZvIjp7InVzZXJJZCI6NTQ1ODUsInBob25lIjoiMTc2MzAwMzU2NTgiLCJuYW1lIjoi5bCP5a6LIiwic3VwcGxpZXJOYW1lIjoi5LiK5rW35a6J55WFQSIsInN1cHBsaWVySWQiOjExMjgsInVzZXJuYW1lIjoic3psIiwidXNlclR5cGUiOiJBUFAiLCJhdXRob3JpdGllcyI6W119LCJzY29wZSI6WyJhbGwiXSwiaXNzIjoiaHR0cHM6Ly9zaW5vYXNzaXN0LmNvbSIsImV4cCI6MTY5MTY0MzYzNSwiaWF0IjoxNjkxNTU3MjM1fQ.S1AignpcnCxSrm3M8rzhCLYlgyqD2Hv-SPMqPLgqlt4'
|
||||
config => {
|
||||
config.data = config.contentType ? config.data : qs.stringify(config.data)
|
||||
config.headers['Content-Type'] = config.contentType || 'application/x-www-form-urlencoded'
|
||||
const urlParams = new URLSearchParams(window.location.search);
|
||||
const token = urlParams.get('token');
|
||||
config.headers['Authorization'] = `${token}`;
|
||||
/* if (getToken()) {
|
||||
config.headers['token'] = getToken()
|
||||
}*/
|
||||
return config
|
||||
},
|
||||
error => {
|
||||
console.log(error)
|
||||
return Promise.reject(error)
|
||||
}
|
||||
return config
|
||||
},
|
||||
error => {
|
||||
console.log(error)
|
||||
return Promise.reject(error)
|
||||
}
|
||||
)
|
||||
|
||||
service.interceptors.response.use(
|
||||
response => {
|
||||
const res = response.data
|
||||
// console.log('rere', res)
|
||||
return res
|
||||
// if (res.code && (res.code != '00' && res.code != '105' )) {
|
||||
// Toast(res.msg || 'Error')
|
||||
// return Promise.reject(new Error(res.msg || 'Error'))
|
||||
// } else {
|
||||
// if( res.code === 0 ) {
|
||||
// return res.result
|
||||
// } else {
|
||||
// return res.data
|
||||
// }
|
||||
// }
|
||||
},
|
||||
error => {
|
||||
console.log('err' + error)
|
||||
Toast(error.message)
|
||||
return Promise.reject(error)
|
||||
}
|
||||
response => {
|
||||
const res = response.data
|
||||
// console.log('rere', res)
|
||||
return res //请求响应数据
|
||||
// if (res.code && (res.code != '00' && res.code != '105' )) {
|
||||
// Toast(res.msg || 'Error')
|
||||
// return Promise.reject(new Error(res.msg || 'Error'))
|
||||
// } else {
|
||||
// if( res.code === 0 ) {
|
||||
// return res.result
|
||||
// } else {
|
||||
// return res.data
|
||||
// }
|
||||
// }
|
||||
},
|
||||
error => {
|
||||
console.log('err' + error)
|
||||
return Promise.reject(error)
|
||||
}
|
||||
)
|
||||
export default service
|
||||
|
@ -3,7 +3,7 @@
|
||||
<div class="title">报备事项:</div>
|
||||
<div class="line"></div>
|
||||
<van-radio-group v-model="radio" @change="change">
|
||||
<van-radio name="1" class="item">
|
||||
<van-radio name="特殊情况绕路" class="item">
|
||||
特殊情况绕路
|
||||
<img
|
||||
slot="icon"
|
||||
@ -11,7 +11,7 @@
|
||||
:src="props.checked ? activeIcon : inactiveIcon"
|
||||
>
|
||||
</van-radio>
|
||||
<van-radio name="2" class="item">
|
||||
<van-radio name="事发地变更" class="item">
|
||||
事发地变更
|
||||
<img
|
||||
slot="icon"
|
||||
@ -19,7 +19,7 @@
|
||||
:src="props.checked ? activeIcon : inactiveIcon"
|
||||
>
|
||||
</van-radio>
|
||||
<van-radio name="3" class="item">
|
||||
<van-radio name="目的地变更" class="item">
|
||||
目的地变更
|
||||
<img
|
||||
slot="icon"
|
||||
@ -27,7 +27,7 @@
|
||||
:src="props.checked ? activeIcon : inactiveIcon"
|
||||
>
|
||||
</van-radio>
|
||||
<van-radio name="4" class="item">
|
||||
<van-radio name="其他报备" class="item">
|
||||
其他报备
|
||||
<img
|
||||
slot="icon"
|
||||
@ -36,47 +36,58 @@
|
||||
>
|
||||
</van-radio>
|
||||
</van-radio-group>
|
||||
|
||||
<!-- <div class="item" @click="isCheck = !isCheck">-->
|
||||
<!-- <img :src="isCheck ? require('@/assets/check.png') : require('@/assets/uncheck.png')" />-->
|
||||
<!-- <span>特殊情况绕路</span>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="item">-->
|
||||
<!-- <img :src="isCheck ? require('@/assets/check.png') : require('@/assets/uncheck.png')" />-->
|
||||
<!-- <span>事发地变更</span>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="item">-->
|
||||
<!-- <img :src="isCheck ? require('@/assets/check.png') : require('@/assets/uncheck.png')" />-->
|
||||
<!-- <span>目的地变更</span>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="item">-->
|
||||
<!-- <img :src="isCheck ? require('@/assets/check.png') : require('@/assets/uncheck.png')" />-->
|
||||
<!-- <span>其他报备</span>-->
|
||||
<!-- </div>-->
|
||||
<textarea class="multiple" id="text-input" rows="4" cols="50" placeholder="报备描述"></textarea><br>
|
||||
<textarea class="multiple" id="text-input" rows="4" cols="50" placeholder="报备描述" v-model="decscripTxt"></textarea><br>
|
||||
<common-btn @submitClick="submit" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {orderReporting} from "@/api/order"
|
||||
import CommonBtn from "@/components/commonBtn.vue"
|
||||
export default {
|
||||
name: "reportingView",
|
||||
data(){
|
||||
return{
|
||||
// isCheck:false,
|
||||
radio: '1',
|
||||
decscripTxt:'',
|
||||
radio: '',
|
||||
activeIcon: require('@/assets/check.png'),
|
||||
inactiveIcon: require('@/assets/uncheck.png')
|
||||
inactiveIcon: require('@/assets/uncheck.png'),
|
||||
queryType:'',
|
||||
userOrderId:'',
|
||||
orderCode:''
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
console.log(this.radio)
|
||||
const urlParams = new URLSearchParams(window.location.search);
|
||||
this.queryType = urlParams.get('queryType');
|
||||
this.userOrderId = urlParams.get('userOrderId');
|
||||
this.orderCode = urlParams.get('orderCode')
|
||||
},
|
||||
methods:{
|
||||
submit(){
|
||||
console.log("提交1111111111")
|
||||
this.goReporting();
|
||||
},
|
||||
change(e){
|
||||
console.log("change,可以拿到选中的是哪个值",e)
|
||||
this.radio=e
|
||||
console.log("可以拿到选中的是哪个值",this.radio)
|
||||
},
|
||||
async goReporting(){
|
||||
let result = await orderReporting({
|
||||
queryType:this.queryType,
|
||||
userOrderId:this.userOrderId,
|
||||
orderCode:this.orderCode,
|
||||
reportingItem:this.radio ? this.radio : "",
|
||||
reportingDesc:this.decscripTxt ? this.decscripTxt : ""
|
||||
})
|
||||
if(result.code === 200){
|
||||
this.$toast(result.msg)
|
||||
setTimeout(()=>{
|
||||
window.android.sendMessage("goBack");
|
||||
},2000)
|
||||
}
|
||||
}
|
||||
},
|
||||
components:{
|
||||
CommonBtn
|
||||
|
@ -10,9 +10,9 @@
|
||||
<div>CA段公里数</div>
|
||||
</div>
|
||||
<div class="rightInputMeters">
|
||||
<div><input type="number"/>公里</div>
|
||||
<div><input type="number"/>公里</div>
|
||||
<div><input type="number"/>公里</div>
|
||||
<div><input type="number" v-model="form.reportMileageAb"/>公里</div>
|
||||
<div><input type="number" v-model="form.reportMileageBc"/>公里</div>
|
||||
<div><input type="number" v-model="form.reportMileageCa"/>公里</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -21,14 +21,14 @@
|
||||
<div class="line"></div>
|
||||
<div class="metersWrap">
|
||||
<div class="leftKiloMeters">
|
||||
<div>AB段公里数</div>
|
||||
<div>BC段公里数</div>
|
||||
<div>CA段公里数</div>
|
||||
<div>过路桥费ab</div>
|
||||
<div>过路桥费bc</div>
|
||||
<div>过路桥费ca</div>
|
||||
</div>
|
||||
<div class="rightInputMeters">
|
||||
<div><input type="number"/>公里</div>
|
||||
<div><input type="number"/>公里</div>
|
||||
<div><input type="number"/>公里</div>
|
||||
<div><input type="number" v-model="form.bridgeAmountAb"/>元</div>
|
||||
<div><input type="number" v-model="form.bridgeAmountBc"/>元</div>
|
||||
<div><input type="number" v-model="form.bridgeAmountCa"/>元</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -43,10 +43,10 @@
|
||||
<div class="blueColor">已收取客户金额</div>
|
||||
</div>
|
||||
<div class="rightInputMeters" style="opacity: 1">
|
||||
<div class="alignRight"><input type="number"/>个</div>
|
||||
<div class="alignRight"><input type="number"/>元</div>
|
||||
<div class="alignRight"><input type="number"/>元</div>
|
||||
<div class="blueColor"><input type="number"/>元</div>
|
||||
<div class="alignRight"><input type="number" v-model="form.tyreNumber"/>个</div>
|
||||
<div class="alignRight"><input type="number" v-model="form.waitAmount"/>元</div>
|
||||
<div class="alignRight"><input type="number" v-model="form.dilemmaFee"/>元</div>
|
||||
<div class="blueColor"><input type="number" v-model="form.customerAmount"/>元</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -56,14 +56,55 @@
|
||||
|
||||
<script>
|
||||
import CommonBtn from "@/components/commonBtn.vue"
|
||||
import {updateOrderSettlement} from "@/api/order"
|
||||
export default {
|
||||
name: "supplySettlement",
|
||||
data(){
|
||||
return{}
|
||||
return{
|
||||
taskOrderId:'',
|
||||
userOrderId:'',
|
||||
orderCode:'',
|
||||
form:{
|
||||
reportMileageAb:'',
|
||||
reportMileageBc:'',
|
||||
reportMileageCa:'',
|
||||
bridgeAmountAb:'',
|
||||
bridgeAmountBc:'',
|
||||
bridgeAmountCa:'',
|
||||
tyreNumber:'',
|
||||
waitAmount:'',
|
||||
dilemmaFee:'',
|
||||
customerAmount:'',
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
const urlParams = new URLSearchParams(window.location.search);
|
||||
this.taskOrderId = urlParams.get('taskOrderId');
|
||||
this.userOrderId = urlParams.get('userOrderId');
|
||||
this.orderCode = urlParams.get('orderCode')
|
||||
},
|
||||
methods:{
|
||||
submit() {
|
||||
console.log("提交")
|
||||
this.updatSettlement()
|
||||
},
|
||||
async updatSettlement(){
|
||||
let result =await updateOrderSettlement({
|
||||
...this.form,
|
||||
userOrderId:this.userOrderId,
|
||||
orderCode:this.orderCode,
|
||||
taskOrderId:this.taskOrderId
|
||||
})
|
||||
if(result.code !== 200){
|
||||
this.$toast(result.msg)
|
||||
}else{
|
||||
this.$toast(result.msg)
|
||||
setTimeout(()=>{
|
||||
window.android.sendMessage("goBack");
|
||||
},2000)
|
||||
}
|
||||
console.log("result",result)
|
||||
}
|
||||
},
|
||||
components:{
|
||||
|
@ -26,7 +26,7 @@ export default {
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getList()
|
||||
// this.getList()
|
||||
},
|
||||
methods:{
|
||||
async getList(){
|
||||
|
@ -21,7 +21,7 @@
|
||||
import { myMixins} from "@/utils/myMixins";
|
||||
|
||||
export default {
|
||||
name: "carManage",
|
||||
name: "vehicleManage",
|
||||
mixins:[myMixins],
|
||||
}
|
||||
</script>
|
@ -1,80 +1,107 @@
|
||||
<template>
|
||||
<div class="wrap">
|
||||
<div class="baseInfo common">
|
||||
<div class="title">基本信息:</div>
|
||||
<div class="line"></div>
|
||||
<div class="infoWrap fontColor">
|
||||
<div class="leftTitle">
|
||||
<div class="leftItem">工单编号:</div>
|
||||
<div class="leftItem">合同:</div>
|
||||
<div class="leftItem">结算方式:</div>
|
||||
<div class="leftItem">客户姓名:</div>
|
||||
<div class="leftItem">客户电话:</div>
|
||||
<div class="leftItem">车牌号:</div>
|
||||
<div class="leftItem">车型品牌:</div>
|
||||
</div>
|
||||
<div class="rightContent">
|
||||
<div class="rightItem" style="display: flex;align-items: center;">
|
||||
<span id="copyText">ZD23097890987</span>
|
||||
<img @click="copyText" src="@/assets/copy.png" style="width: 35px;height: 15px;margin-left: 10px"/>
|
||||
<div class="wrap">
|
||||
<div class="baseInfo common">
|
||||
<div class="title">基本信息:</div>
|
||||
<div class="line"></div>
|
||||
<div class="infoWrap fontColor">
|
||||
<div class="leftTitle">
|
||||
<div class="leftItem">工单编号:</div>
|
||||
<div class="leftItem">合同:</div>
|
||||
<div class="leftItem">结算方式:</div>
|
||||
<div class="leftItem">客户姓名:</div>
|
||||
<div class="leftItem">客户电话:</div>
|
||||
<div class="leftItem">车牌号:</div>
|
||||
<div class="leftItem">车型品牌:</div>
|
||||
</div>
|
||||
<div class="rightContent">
|
||||
<div class="rightItem" style="display: flex;align-items: center;">
|
||||
<span id="copyText">{{orderCode}}</span>
|
||||
<img @click="copyText" src="@/assets/copy.png" style="width: 35px;height: 15px;margin-left: 10px"/>
|
||||
</div>
|
||||
<div class="rightItem">{{ orderDetailInfo.contractName }}</div>
|
||||
<div class="rightItem">{{ orderDetailInfo.contractSettleType.label }}</div>
|
||||
<div class="rightItem">{{ orderDetailInfo.userName }}</div>
|
||||
<div class="rightItem">{{ orderDetailInfo.userPhone }}</div>
|
||||
<div class="rightItem">{{ orderDetailInfo.plateNumber }}</div>
|
||||
<div class="rightItem">{{orderDetailInfo.model}} {{ orderDetailInfo.brand }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="serviceInfo common">
|
||||
<div class="title">服务信息:</div>
|
||||
<div class="line"></div>
|
||||
<div class="infoContent">
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">服务类型:</span><span class="rightContent">{{ orderDetailInfo.taskServiceName }}</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">车辆位于:</span><span class="rightContent">{{ orderDetailInfo.positionEnvironment.label }}</span>
|
||||
</div>
|
||||
<div class="item" style="align-items: baseline">
|
||||
<span class="leftTitle fontColor">事发地:</span><span class="rightContent" style="flex: 1">{{ orderDetailInfo.vehiclePointAddress }}</span>
|
||||
</div>
|
||||
<div class="item" style="align-items: baseline">
|
||||
<span class="leftTitle fontColor">事发地补充:</span><span class="rightContent vehicleRemark" >{{orderDetailInfo.vehiclePointRemark}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="item" style="align-items: baseline">
|
||||
<span class="leftTitle fontColor">目的地:</span><span class="rightContent" style="flex: 1">{{ orderDetailInfo.destinationAddress }}</span>
|
||||
</div>
|
||||
<div class="item" style="align-items: baseline">
|
||||
<span class="leftTitle fontColor">目的地补充:</span><span class="rightContent vehicleRemark">{{orderDetailInfo.destinationRemark}}</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">工单状态:</span><span class="rightContent orderStatus">{{ orderDetailInfo.taskOrderStatusString }}</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">服务车辆:</span><span class="rightContent">{{ orderDetailInfo.taskVehicleName }}</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">服务师傅:</span><span class="rightContent">{{ orderDetailInfo.driverName }} {{orderDetailInfo.drivePhone ? '/' : ''}} {{orderDetailInfo.drivePhone }}</span>
|
||||
</div>
|
||||
<div class="rightItem">平安产险</div>
|
||||
<div class="rightItem">合同月结</div>
|
||||
<div class="rightItem">万女士</div>
|
||||
<div class="rightItem">15234447878</div>
|
||||
<div class="rightItem">沪A123456</div>
|
||||
<div class="rightItem">奥迪 A6L</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="serviceInfo common">
|
||||
<div class="title">服务信息:</div>
|
||||
<div class="line"></div>
|
||||
<div class="infoContent">
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">服务类型:</span><span class="rightContent">故障——拖车</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">车辆位于:</span><span class="rightContent">地面</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">事发地:</span><span class="rightContent">上海市高科西路650号</span>
|
||||
</div>
|
||||
<div class="item" style="align-items: baseline">
|
||||
<span class="leftTitle fontColor">事发地补充:</span><span class="rightContent vehicleRemark" style="flex: 1">50公里免拖,超出部分费用按照市场价格由客户现场支付,原始手机号:15088752478,客户承担背车段路桥费。目的地不明确请师傅到现场核实清楚并回电反馈</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">目的地:</span><span class="rightContent">浙江省杭州市富阳区比亚迪海洋4s店</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">目的地补充:</span><span class="rightContent vehicleRemark">无</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">工单状态:</span><span class="rightContent orderStatus">师傅接单,待发车</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">服务车辆:</span><span class="rightContent">沪A123456</span>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="leftTitle fontColor">服务师傅:</span><span class="rightContent">周师傅/15234345656</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {myMixins} from '@/utils/myMixins'
|
||||
import {getOrderDetail} from "@/api/order"
|
||||
export default {
|
||||
name: "workOrderDetail",
|
||||
mixins:[myMixins],
|
||||
data(){
|
||||
return{
|
||||
|
||||
userOrderId:'',
|
||||
queryType:'',
|
||||
orderCode:'',
|
||||
taskOrderId:'',
|
||||
orderDetailInfo:{}
|
||||
}
|
||||
},
|
||||
async mounted() {
|
||||
// 获取当前 URL
|
||||
const urlParams = new URLSearchParams(window.location.search);
|
||||
// 获取指定参数的值
|
||||
this.queryType=urlParams.get('queryType');
|
||||
this.userOrderId = urlParams.get('userOrderId');
|
||||
this.orderCode=urlParams.get('orderCode');
|
||||
this.taskOrderId=urlParams.get('taskOrderId') ? urlParams.get('taskOrderId') : '';
|
||||
// console.log(this.queryType)
|
||||
await this.getDetail();
|
||||
},
|
||||
methods:{
|
||||
|
||||
async getDetail(){
|
||||
let result=await getOrderDetail({
|
||||
queryType:this.queryType,
|
||||
userOrderId:this.userOrderId,
|
||||
orderCode:this.orderCode,
|
||||
taskOrderId:this.taskOrderId ? this.taskOrderId : ''
|
||||
})
|
||||
if(result.code === 200){
|
||||
this.orderDetailInfo=result.data;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@ -118,6 +145,7 @@ export default {
|
||||
.item{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
line-height: 27px;
|
||||
}
|
||||
.infoContent{
|
||||
.leftTitle{
|
||||
@ -135,6 +163,7 @@ export default {
|
||||
opacity: 0.55;
|
||||
color: #121212;
|
||||
line-height: 14px;
|
||||
flex: 1;
|
||||
}
|
||||
.orderStatus{
|
||||
color: #E69B0B;
|
||||
@ -142,7 +171,7 @@ export default {
|
||||
}
|
||||
}
|
||||
.title{
|
||||
@include fontWeightSize(500,14px);
|
||||
@include fontWeightSize(500,14px);
|
||||
color: #323643;
|
||||
line-height: 20px;
|
||||
opacity: .6;
|
||||
|
Reference in New Issue
Block a user