装备详情 订单详情页面完善
This commit is contained in:
parent
fe6f641a1b
commit
c26a49e728
|
|
@ -0,0 +1,194 @@
|
|||
<template>
|
||||
<!-- 装备外观 -->
|
||||
<view class="goods-details">
|
||||
<!-- <h4 class="h4-title">装备外观</h4> -->
|
||||
<van-image
|
||||
style="margin-bottom: 6px"
|
||||
fit="cover"
|
||||
position="center"
|
||||
v-for="item in deviceInfo.detailsFileList"
|
||||
:key="item.id"
|
||||
:src="item.fileUrl"
|
||||
/>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { computed, ref } from 'vue'
|
||||
import { onLoad } from '@dcloudio/uni-app'
|
||||
import { useMemberStore } from '@/stores/index.js'
|
||||
import { getDeviceDetailsAPI } from '@/services/goods/index.js'
|
||||
import { addBookCarAPI, getBookCarDetailsAPI } from '@/services/cart/index.js'
|
||||
const memberStore = useMemberStore()
|
||||
const userCompanyId = ref()
|
||||
const userCompanyName = ref()
|
||||
const images = ref([])
|
||||
const activeIndex = ref(1)
|
||||
const deviceInfo = ref({})
|
||||
const cartCount = ref(0)
|
||||
const props = defineProps({
|
||||
maId: {
|
||||
type: [String, Number],
|
||||
default: () => '',
|
||||
},
|
||||
})
|
||||
const goodsLabel = ref([
|
||||
{ goods_label: '装备编号:', label_content: 'code' },
|
||||
{ goods_label: '装备类目:', label_content: 'groupName' },
|
||||
{ goods_label: '装备型号:', label_content: 'typeName' },
|
||||
{ goods_label: '规格:', label_content: '' },
|
||||
{ goods_label: '品牌:', label_content: 'brand' },
|
||||
{ goods_label: '出厂日期:', label_content: 'productionDate' },
|
||||
{ goods_label: '功能特点:', label_content: '' },
|
||||
])
|
||||
const goodsPicCount = computed(() => {
|
||||
return images.value.length
|
||||
})
|
||||
const onSwiperChange = (e) => {
|
||||
activeIndex.value = e + 1
|
||||
}
|
||||
const getDeviceDetailsData = async () => {
|
||||
const { data: res } = await getDeviceDetailsAPI(props.maId)
|
||||
deviceInfo.value = res
|
||||
|
||||
console.log(deviceInfo.value, 'deviceInfo.value----****----')
|
||||
images.value = res.mainFileList
|
||||
}
|
||||
// 获取预约车数量
|
||||
const getBookCarDetailsData = async () => {
|
||||
cartCount.value = 0
|
||||
const { data: res } = await getBookCarDetailsAPI()
|
||||
if (res.length > 0) {
|
||||
res.forEach((e) => {
|
||||
cartCount.value = e.devInfoVoList.length + cartCount.value
|
||||
})
|
||||
} else {
|
||||
cartCount.value = 0
|
||||
}
|
||||
}
|
||||
// 加入预约车
|
||||
const onAddCart = () => {
|
||||
showConfirmDialog({
|
||||
title: '温馨提示',
|
||||
message: '是否确认加入预约车',
|
||||
})
|
||||
.then(async () => {
|
||||
console.log(deviceInfo.value, 'deviceInfo')
|
||||
const { companyId, maId } = deviceInfo.value
|
||||
const res = await addBookCarAPI({
|
||||
maId,
|
||||
orderCompany: companyId,
|
||||
})
|
||||
if (res.code === 200) {
|
||||
showSuccessToast('加入成功')
|
||||
getDeviceDetailsData()
|
||||
getBookCarDetailsData()
|
||||
}
|
||||
})
|
||||
.catch(() => {})
|
||||
}
|
||||
// 立即承租
|
||||
const onRentNow = () => {
|
||||
uni.navigateTo({ url: `/pages/order/index?id=${deviceInfo.value.maId}` })
|
||||
}
|
||||
|
||||
// 跳转预约车
|
||||
const onCartBarPage = () => {
|
||||
uni.switchTab({ url: '/pages/cart/index' })
|
||||
}
|
||||
|
||||
// 在线聊
|
||||
const onLineMessage = () => {
|
||||
const { companyId, companyName, ownId } = deviceInfo.value
|
||||
uni.navigateTo({
|
||||
url: `/pages/message-pages/index?id=${companyId}&name=${companyName}&ownId=${ownId}&formName=${userCompanyName.value}`,
|
||||
})
|
||||
}
|
||||
|
||||
onLoad(() => {
|
||||
userCompanyId.value = memberStore.userInfo.companyId
|
||||
userCompanyName.value = memberStore.userCompanyName
|
||||
getDeviceDetailsData()
|
||||
getBookCarDetailsData()
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.swiper-container {
|
||||
position: relative !important;
|
||||
.count-tip {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 20px;
|
||||
padding: 2px 8px;
|
||||
border-radius: 2px;
|
||||
background-color: #bcbcbc;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
.van-swipe {
|
||||
width: 100%;
|
||||
height: 40vh;
|
||||
|
||||
// .van-image {
|
||||
// width: 100%;
|
||||
// height: 100%;
|
||||
// }
|
||||
}
|
||||
|
||||
.card-style {
|
||||
// width: 97%;
|
||||
// margin: 5px auto 0;
|
||||
border-radius: 6px;
|
||||
padding: 8px 12px;
|
||||
box-sizing: border-box;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.goods-name {
|
||||
color: #fff;
|
||||
background: linear-gradient(to right, #e8f4f3, #93dad1, #5fb0a5);
|
||||
.box_1 {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
letter-spacing: 2px;
|
||||
|
||||
.no-bold {
|
||||
font-size: 13px;
|
||||
font-weight: normal;
|
||||
}
|
||||
}
|
||||
|
||||
.text-right {
|
||||
margin-top: 6px;
|
||||
font-size: 12px;
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
.goods-company text,
|
||||
.goods-details text {
|
||||
margin-right: 16px;
|
||||
font-size: 13px;
|
||||
color: #5c5b5b;
|
||||
}
|
||||
|
||||
.goods-company view,
|
||||
.goods-details view,
|
||||
.goods-company h4 {
|
||||
padding: 2px 0;
|
||||
}
|
||||
|
||||
.h4-title {
|
||||
padding: 12px 0;
|
||||
margin: 5px 0;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.prove-container {
|
||||
font-size: 14px;
|
||||
color: #00a288;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -40,10 +40,33 @@
|
|||
</view>
|
||||
|
||||
<view class="card-style goods-details">
|
||||
<h4>装备详情</h4>
|
||||
<h4 class="h4-title">装备详情</h4>
|
||||
<view v-for="item in goodsLabel" :key="item.goods_label">
|
||||
<text> {{ item.goods_label }}{{ deviceInfo[item.label_content] }}</text>
|
||||
</view>
|
||||
<!-- <h4 class="h4-title">装备外观</h4>
|
||||
<van-image
|
||||
style="margin-bottom: 6px"
|
||||
fit="cover"
|
||||
position="center"
|
||||
v-for="item in deviceInfo.detailsFileList"
|
||||
:key="item.id"
|
||||
:src="item.fileUrl"
|
||||
/>
|
||||
<h4 class="h4-title">证书展示</h4>
|
||||
<view>
|
||||
合格证:
|
||||
<view v-for="item in deviceInfo.insurancePdf" :key="item.id" class="prove-container">
|
||||
{{ item.fileName }}
|
||||
</view>
|
||||
</view>
|
||||
<h4 class="h4-title">出租记录</h4>
|
||||
<van-cell-group inset v-for="(item, index) in deviceInfo.leaseList" :key="index">
|
||||
<van-cell title="订单号" :value="item.orderCode" />
|
||||
<van-cell title="租赁方" :value="item.leaseName" />
|
||||
<van-cell title="租赁开始时间" :value="item.leaseStartTime" />
|
||||
<van-cell title="租赁结束时间" :value="item.leaseEndTime" />
|
||||
</van-cell-group> -->
|
||||
</view>
|
||||
|
||||
<van-action-bar v-if="memberStore.userType === 2">
|
||||
|
|
@ -108,7 +131,9 @@ const onSwiperChange = (e) => {
|
|||
const getDeviceDetailsData = async () => {
|
||||
const { data: res } = await getDeviceDetailsAPI(props.maId)
|
||||
deviceInfo.value = res
|
||||
images.value = res.detailsFileList
|
||||
|
||||
console.log(deviceInfo.value, 'deviceInfo.value----****----')
|
||||
images.value = res.mainFileList
|
||||
}
|
||||
// 获取预约车数量
|
||||
const getBookCarDetailsData = async () => {
|
||||
|
|
@ -186,10 +211,10 @@ onLoad(() => {
|
|||
width: 100%;
|
||||
height: 40vh;
|
||||
|
||||
.van-image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
// .van-image {
|
||||
// width: 100%;
|
||||
// height: 100%;
|
||||
// }
|
||||
}
|
||||
|
||||
.card-style {
|
||||
|
|
@ -236,4 +261,15 @@ onLoad(() => {
|
|||
.goods-company h4 {
|
||||
padding: 2px 0;
|
||||
}
|
||||
|
||||
.h4-title {
|
||||
padding: 12px 0;
|
||||
margin: 5px 0;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.prove-container {
|
||||
font-size: 14px;
|
||||
color: #00a288;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,202 @@
|
|||
<template>
|
||||
<!-- 装备证书展示 -->
|
||||
<view class="goods-details">
|
||||
<!-- <h4 class="h4-title">证书展示</h4> -->
|
||||
<!-- <view>
|
||||
合格证:
|
||||
<view v-for="item in deviceInfo.insurancePdf" :key="item.id" class="prove-container">
|
||||
{{ item.fileName }}
|
||||
</view>
|
||||
|
||||
</view> -->
|
||||
|
||||
<van-image
|
||||
style="margin-bottom: 6px"
|
||||
fit="cover"
|
||||
position="center"
|
||||
v-for="item in deviceInfo.insurancePdf"
|
||||
:key="item.id"
|
||||
:src="item.fileUrl"
|
||||
/>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { computed, ref } from 'vue'
|
||||
import { onLoad } from '@dcloudio/uni-app'
|
||||
import { useMemberStore } from '@/stores/index.js'
|
||||
import { getDeviceDetailsAPI } from '@/services/goods/index.js'
|
||||
import { addBookCarAPI, getBookCarDetailsAPI } from '@/services/cart/index.js'
|
||||
const memberStore = useMemberStore()
|
||||
const userCompanyId = ref()
|
||||
const userCompanyName = ref()
|
||||
const images = ref([])
|
||||
const activeIndex = ref(1)
|
||||
const deviceInfo = ref({})
|
||||
const cartCount = ref(0)
|
||||
const props = defineProps({
|
||||
maId: {
|
||||
type: [String, Number],
|
||||
default: () => '',
|
||||
},
|
||||
})
|
||||
const goodsLabel = ref([
|
||||
{ goods_label: '装备编号:', label_content: 'code' },
|
||||
{ goods_label: '装备类目:', label_content: 'groupName' },
|
||||
{ goods_label: '装备型号:', label_content: 'typeName' },
|
||||
{ goods_label: '规格:', label_content: '' },
|
||||
{ goods_label: '品牌:', label_content: 'brand' },
|
||||
{ goods_label: '出厂日期:', label_content: 'productionDate' },
|
||||
{ goods_label: '功能特点:', label_content: '' },
|
||||
])
|
||||
const goodsPicCount = computed(() => {
|
||||
return images.value.length
|
||||
})
|
||||
const onSwiperChange = (e) => {
|
||||
activeIndex.value = e + 1
|
||||
}
|
||||
const getDeviceDetailsData = async () => {
|
||||
const { data: res } = await getDeviceDetailsAPI(props.maId)
|
||||
deviceInfo.value = res
|
||||
|
||||
console.log(deviceInfo.value, 'deviceInfo.value----****----')
|
||||
images.value = res.mainFileList
|
||||
}
|
||||
// 获取预约车数量
|
||||
const getBookCarDetailsData = async () => {
|
||||
cartCount.value = 0
|
||||
const { data: res } = await getBookCarDetailsAPI()
|
||||
if (res.length > 0) {
|
||||
res.forEach((e) => {
|
||||
cartCount.value = e.devInfoVoList.length + cartCount.value
|
||||
})
|
||||
} else {
|
||||
cartCount.value = 0
|
||||
}
|
||||
}
|
||||
// 加入预约车
|
||||
const onAddCart = () => {
|
||||
showConfirmDialog({
|
||||
title: '温馨提示',
|
||||
message: '是否确认加入预约车',
|
||||
})
|
||||
.then(async () => {
|
||||
console.log(deviceInfo.value, 'deviceInfo')
|
||||
const { companyId, maId } = deviceInfo.value
|
||||
const res = await addBookCarAPI({
|
||||
maId,
|
||||
orderCompany: companyId,
|
||||
})
|
||||
if (res.code === 200) {
|
||||
showSuccessToast('加入成功')
|
||||
getDeviceDetailsData()
|
||||
getBookCarDetailsData()
|
||||
}
|
||||
})
|
||||
.catch(() => {})
|
||||
}
|
||||
// 立即承租
|
||||
const onRentNow = () => {
|
||||
uni.navigateTo({ url: `/pages/order/index?id=${deviceInfo.value.maId}` })
|
||||
}
|
||||
|
||||
// 跳转预约车
|
||||
const onCartBarPage = () => {
|
||||
uni.switchTab({ url: '/pages/cart/index' })
|
||||
}
|
||||
|
||||
// 在线聊
|
||||
const onLineMessage = () => {
|
||||
const { companyId, companyName, ownId } = deviceInfo.value
|
||||
uni.navigateTo({
|
||||
url: `/pages/message-pages/index?id=${companyId}&name=${companyName}&ownId=${ownId}&formName=${userCompanyName.value}`,
|
||||
})
|
||||
}
|
||||
|
||||
onLoad(() => {
|
||||
userCompanyId.value = memberStore.userInfo.companyId
|
||||
userCompanyName.value = memberStore.userCompanyName
|
||||
getDeviceDetailsData()
|
||||
getBookCarDetailsData()
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.swiper-container {
|
||||
position: relative !important;
|
||||
.count-tip {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 20px;
|
||||
padding: 2px 8px;
|
||||
border-radius: 2px;
|
||||
background-color: #bcbcbc;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
.van-swipe {
|
||||
width: 100%;
|
||||
height: 40vh;
|
||||
|
||||
// .van-image {
|
||||
// width: 100%;
|
||||
// height: 100%;
|
||||
// }
|
||||
}
|
||||
|
||||
.card-style {
|
||||
width: 97%;
|
||||
margin: 5px auto 0;
|
||||
border-radius: 6px;
|
||||
padding: 8px 12px;
|
||||
box-sizing: border-box;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.goods-name {
|
||||
color: #fff;
|
||||
background: linear-gradient(to right, #e8f4f3, #93dad1, #5fb0a5);
|
||||
.box_1 {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
letter-spacing: 2px;
|
||||
|
||||
.no-bold {
|
||||
font-size: 13px;
|
||||
font-weight: normal;
|
||||
}
|
||||
}
|
||||
|
||||
.text-right {
|
||||
margin-top: 6px;
|
||||
font-size: 12px;
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
.goods-company text,
|
||||
.goods-details text {
|
||||
margin-right: 16px;
|
||||
font-size: 13px;
|
||||
color: #5c5b5b;
|
||||
}
|
||||
|
||||
.goods-company view,
|
||||
.goods-details view,
|
||||
.goods-company h4 {
|
||||
padding: 2px 0;
|
||||
}
|
||||
|
||||
.h4-title {
|
||||
padding: 12px 0;
|
||||
margin: 5px 0;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.prove-container {
|
||||
font-size: 14px;
|
||||
color: #00a288;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,192 @@
|
|||
<template>
|
||||
<!-- 装备出租记录 -->
|
||||
<view class="goods-details">
|
||||
<!-- <h4 class="h4-title">出租记录</h4> -->
|
||||
<van-cell-group inset v-for="(item, index) in deviceInfo.leaseList" :key="index">
|
||||
<van-cell title="订单号" :value="item.orderCode" />
|
||||
<van-cell title="租赁方" :value="item.leaseName" />
|
||||
<van-cell title="租赁开始时间" :value="item.leaseStartTime" />
|
||||
<van-cell title="租赁结束时间" :value="item.leaseEndTime" />
|
||||
</van-cell-group>
|
||||
|
||||
<van-empty description="暂无记录" v-if="!deviceInfo.leaseList" />
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { computed, ref } from 'vue'
|
||||
import { onLoad } from '@dcloudio/uni-app'
|
||||
import { useMemberStore } from '@/stores/index.js'
|
||||
import { getDeviceDetailsAPI } from '@/services/goods/index.js'
|
||||
import { addBookCarAPI, getBookCarDetailsAPI } from '@/services/cart/index.js'
|
||||
const memberStore = useMemberStore()
|
||||
const userCompanyId = ref()
|
||||
const userCompanyName = ref()
|
||||
const images = ref([])
|
||||
const activeIndex = ref(1)
|
||||
const deviceInfo = ref({})
|
||||
const cartCount = ref(0)
|
||||
const props = defineProps({
|
||||
maId: {
|
||||
type: [String, Number],
|
||||
default: () => '',
|
||||
},
|
||||
})
|
||||
const goodsLabel = ref([
|
||||
{ goods_label: '装备编号:', label_content: 'code' },
|
||||
{ goods_label: '装备类目:', label_content: 'groupName' },
|
||||
{ goods_label: '装备型号:', label_content: 'typeName' },
|
||||
{ goods_label: '规格:', label_content: '' },
|
||||
{ goods_label: '品牌:', label_content: 'brand' },
|
||||
{ goods_label: '出厂日期:', label_content: 'productionDate' },
|
||||
{ goods_label: '功能特点:', label_content: '' },
|
||||
])
|
||||
const goodsPicCount = computed(() => {
|
||||
return images.value.length
|
||||
})
|
||||
const onSwiperChange = (e) => {
|
||||
activeIndex.value = e + 1
|
||||
}
|
||||
const getDeviceDetailsData = async () => {
|
||||
const { data: res } = await getDeviceDetailsAPI(props.maId)
|
||||
deviceInfo.value.leaseList = res.leaseList
|
||||
// images.value = res.mainFileList
|
||||
}
|
||||
// 获取预约车数量
|
||||
const getBookCarDetailsData = async () => {
|
||||
cartCount.value = 0
|
||||
const { data: res } = await getBookCarDetailsAPI()
|
||||
if (res.length > 0) {
|
||||
res.forEach((e) => {
|
||||
cartCount.value = e.devInfoVoList.length + cartCount.value
|
||||
})
|
||||
} else {
|
||||
cartCount.value = 0
|
||||
}
|
||||
}
|
||||
// 加入预约车
|
||||
const onAddCart = () => {
|
||||
showConfirmDialog({
|
||||
title: '温馨提示',
|
||||
message: '是否确认加入预约车',
|
||||
})
|
||||
.then(async () => {
|
||||
console.log(deviceInfo.value, 'deviceInfo')
|
||||
const { companyId, maId } = deviceInfo.value
|
||||
const res = await addBookCarAPI({
|
||||
maId,
|
||||
orderCompany: companyId,
|
||||
})
|
||||
if (res.code === 200) {
|
||||
showSuccessToast('加入成功')
|
||||
getDeviceDetailsData()
|
||||
getBookCarDetailsData()
|
||||
}
|
||||
})
|
||||
.catch(() => {})
|
||||
}
|
||||
// 立即承租
|
||||
const onRentNow = () => {
|
||||
uni.navigateTo({ url: `/pages/order/index?id=${deviceInfo.value.maId}` })
|
||||
}
|
||||
|
||||
// 跳转预约车
|
||||
const onCartBarPage = () => {
|
||||
uni.switchTab({ url: '/pages/cart/index' })
|
||||
}
|
||||
|
||||
// 在线聊
|
||||
const onLineMessage = () => {
|
||||
const { companyId, companyName, ownId } = deviceInfo.value
|
||||
uni.navigateTo({
|
||||
url: `/pages/message-pages/index?id=${companyId}&name=${companyName}&ownId=${ownId}&formName=${userCompanyName.value}`,
|
||||
})
|
||||
}
|
||||
|
||||
onLoad(() => {
|
||||
userCompanyId.value = memberStore.userInfo.companyId
|
||||
userCompanyName.value = memberStore.userCompanyName
|
||||
getDeviceDetailsData()
|
||||
getBookCarDetailsData()
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.swiper-container {
|
||||
position: relative !important;
|
||||
.count-tip {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 20px;
|
||||
padding: 2px 8px;
|
||||
border-radius: 2px;
|
||||
background-color: #bcbcbc;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
.van-swipe {
|
||||
width: 100%;
|
||||
height: 40vh;
|
||||
|
||||
// .van-image {
|
||||
// width: 100%;
|
||||
// height: 100%;
|
||||
// }
|
||||
}
|
||||
|
||||
.card-style {
|
||||
width: 97%;
|
||||
margin: 5px auto 0;
|
||||
border-radius: 6px;
|
||||
padding: 8px 12px;
|
||||
box-sizing: border-box;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.goods-name {
|
||||
color: #fff;
|
||||
background: linear-gradient(to right, #e8f4f3, #93dad1, #5fb0a5);
|
||||
.box_1 {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
letter-spacing: 2px;
|
||||
|
||||
.no-bold {
|
||||
font-size: 13px;
|
||||
font-weight: normal;
|
||||
}
|
||||
}
|
||||
|
||||
.text-right {
|
||||
margin-top: 6px;
|
||||
font-size: 12px;
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
.goods-company text,
|
||||
.goods-details text {
|
||||
margin-right: 16px;
|
||||
font-size: 13px;
|
||||
color: #5c5b5b;
|
||||
}
|
||||
|
||||
.goods-company view,
|
||||
.goods-details view,
|
||||
.goods-company h4 {
|
||||
padding: 2px 0;
|
||||
}
|
||||
|
||||
.h4-title {
|
||||
padding: 12px 0;
|
||||
margin: 5px 0;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.prove-container {
|
||||
font-size: 14px;
|
||||
color: #00a288;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -4,7 +4,7 @@
|
|||
<view class="tabs-container">
|
||||
<van-icon name="arrow-left" @click="onHandleBack" />
|
||||
<van-tabs v-model:active="activeTabs" swipeable color="#00a288" background="#c9ead4">
|
||||
<van-tab v-for="(t, i) in tabList" :title="t.tab_name"> </van-tab>
|
||||
<van-tab v-for="(t, i) in tabList" :title="t.tab_name" />
|
||||
</van-tabs>
|
||||
</view>
|
||||
|
||||
|
|
@ -14,9 +14,12 @@
|
|||
:style="{ paddingBottom: actionBarHeight + 'px' }"
|
||||
>
|
||||
<DetailsModel v-if="activeTabs === 0" :maId="maId" />
|
||||
<view v-else>
|
||||
<DetailsAppearance v-if="activeTabs === 1" :maId="maId" />
|
||||
<DetailsProve v-if="activeTabs === 2" :maId="maId" />
|
||||
<DetailsRecord v-if="activeTabs === 3" :maId="maId" />
|
||||
<!-- <view v-else>
|
||||
{{ tabList[activeTabs].tab_name }}
|
||||
</view>
|
||||
</view> -->
|
||||
</scroll-view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -24,6 +27,9 @@
|
|||
<script setup>
|
||||
import { nextTick, ref } from 'vue'
|
||||
import DetailsModel from './components/details-model.vue'
|
||||
import DetailsAppearance from './components/details-appearance.vue'
|
||||
import DetailsProve from './components/details-prove.vue'
|
||||
import DetailsRecord from './components/details-record.vue'
|
||||
import { onLoad } from '@dcloudio/uni-app'
|
||||
const activeTabs = ref(0)
|
||||
const maId = ref('')
|
||||
|
|
|
|||
|
|
@ -171,7 +171,7 @@ const activeSelect = ref(0)
|
|||
const showBottom = ref(false)
|
||||
const deviceList = ref([])
|
||||
const total = ref(0)
|
||||
const activeTypeName = ref('')
|
||||
const activeTypeName = ref('机具')
|
||||
const searchModelValue = ref('')
|
||||
const searchParams = ref({
|
||||
keyWord: '',
|
||||
|
|
@ -395,8 +395,11 @@ onLoad((options) => {
|
|||
if (options.type == 1) {
|
||||
activeTypeName.value = '机具'
|
||||
}
|
||||
searchParams.value.keyWord = options.value
|
||||
searchModelValue.value = options.value
|
||||
searchParams.value.keyWord = options?.value
|
||||
searchModelValue.value = options?.value
|
||||
searchParams.value.typeId = options?.typeId
|
||||
searchParams.value.companyId = options?.companyId
|
||||
options?.typeId ? (searchParams.value.level = 3) : ''
|
||||
getDeviceListData(true)
|
||||
getTypeListData()
|
||||
const companyList = memberStore.companyList.map((e) => {
|
||||
|
|
|
|||
|
|
@ -52,9 +52,54 @@
|
|||
</view>
|
||||
</view>
|
||||
|
||||
<van-tabs
|
||||
animated
|
||||
color="#22AB9B"
|
||||
v-model:active="activeClass"
|
||||
title-active-color="#22AB9B"
|
||||
>
|
||||
<van-tab title="装备分类">
|
||||
<van-sidebar v-model="activeLevel1">
|
||||
<van-sidebar-item
|
||||
:title="item.name"
|
||||
:key="item.id"
|
||||
v-for="item in classDeviceList"
|
||||
/>
|
||||
</van-sidebar>
|
||||
<van-sidebar v-model="activeLevel2">
|
||||
<van-sidebar-item
|
||||
:title="item.name"
|
||||
:key="item.id"
|
||||
v-for="item in classDeviceList[activeLevel1]?.children"
|
||||
/>
|
||||
</van-sidebar>
|
||||
<view style="flex: 1" class="deviceClass">
|
||||
<view
|
||||
class="van-ellipsis"
|
||||
:key="item.id"
|
||||
v-for="item in classDeviceList3"
|
||||
@click="onClickDevice(item)"
|
||||
>
|
||||
{{ item.name }} ({{ item.maCount ? item.maCount : 0 }})
|
||||
</view>
|
||||
</view>
|
||||
</van-tab>
|
||||
<van-tab title="公司分类">
|
||||
<view style="flex: 1" class="companyClass">
|
||||
<view
|
||||
class="van-ellipsis"
|
||||
:key="item.companyId"
|
||||
v-for="item in memberStore.companyList"
|
||||
@click="onClickCompany(item)"
|
||||
>
|
||||
{{ item.companyName }}({{ item.maCount ? item.maCount : 0 }})
|
||||
</view>
|
||||
</view>
|
||||
</van-tab>
|
||||
</van-tabs>
|
||||
|
||||
<view class="order-data">
|
||||
<TitleTip />
|
||||
|
||||
<van-cell-group inset>
|
||||
<van-grid :column-num="3">
|
||||
<van-grid-item v-for="(o, i) in orderData" :key="i" @click="onViewMyOrder(o)">
|
||||
|
|
@ -83,7 +128,7 @@
|
|||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
import { computed, ref } from 'vue'
|
||||
import orderIcon_1 from '@/static/index/order_icon1.png'
|
||||
import orderIcon_2 from '@/static/index/order_icon2.png'
|
||||
import orderIcon_3 from '@/static/index/order_icon3.png'
|
||||
|
|
@ -96,10 +141,11 @@ import TitleTip from '@/components/TitleTip/index'
|
|||
import { onLoad, onShow } from '@dcloudio/uni-app'
|
||||
import { useMemberStore } from '@/stores/index.js'
|
||||
import {
|
||||
getOrderStatusCountAPI,
|
||||
getToDoListAPI,
|
||||
getNoticeLListAPI,
|
||||
getOrderStatusCountAPI,
|
||||
} from '@/services/index/index.js'
|
||||
import { getEquipmentTypeAPI } from '@/services/common/index.js'
|
||||
const activeTypeName = ref('机具')
|
||||
const searchModelValue = ref('')
|
||||
const memberStore = useMemberStore()
|
||||
|
|
@ -109,6 +155,10 @@ const activeUser = ref(1)
|
|||
const finished = ref(false)
|
||||
const toDoListMessage = ref([])
|
||||
const noticeListMessage = ref([])
|
||||
const activeClass = ref(0)
|
||||
const activeLevel1 = ref(0)
|
||||
const activeLevel2 = ref(0)
|
||||
const classDeviceList = ref([])
|
||||
const orderData = ref([
|
||||
{ order_title: '我的订单', order_count: 0, order_status: 0, order_icon: orderIcon_1 },
|
||||
{
|
||||
|
|
@ -192,6 +242,28 @@ const onViewMore = (item) => {
|
|||
})
|
||||
}
|
||||
|
||||
const getEquipmentTypeData = async () => {
|
||||
const { data: result } = await getEquipmentTypeAPI()
|
||||
classDeviceList.value = result
|
||||
// classDeviceList3.value =
|
||||
// classDeviceList.value[activeLevel1.value].children[activeLevel2.value].children
|
||||
}
|
||||
|
||||
const classDeviceList3 = computed(() => {
|
||||
return classDeviceList.value[activeLevel1.value]?.children[activeLevel2.value].children
|
||||
})
|
||||
|
||||
const onClickDevice = (item) => {
|
||||
uni.navigateTo({
|
||||
url: `/pages/goods-list/index?typeId=${item.id}`,
|
||||
})
|
||||
}
|
||||
const onClickCompany = (item) => {
|
||||
uni.navigateTo({
|
||||
url: `/pages/goods-list/index?companyId=${item.companyId}`,
|
||||
})
|
||||
}
|
||||
|
||||
onLoad(() => {
|
||||
finished.value = true
|
||||
userCompanyName.value = memberStore?.userCompanyName
|
||||
|
|
@ -199,14 +271,13 @@ onLoad(() => {
|
|||
|
||||
onShow(async () => {
|
||||
activeUser.value = memberStore.userType
|
||||
|
||||
if (activeUser.value === 2) {
|
||||
uni.setTabBarItem({
|
||||
index: 2,
|
||||
visible: true,
|
||||
})
|
||||
}
|
||||
|
||||
getEquipmentTypeData()
|
||||
getOrderStatusCountData()
|
||||
|
||||
const res = await getToDoListAPI()
|
||||
|
|
@ -305,4 +376,70 @@ onShow(async () => {
|
|||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
:deep(.van-tabs__content--animated) {
|
||||
padding: 0 10px;
|
||||
}
|
||||
:deep(.van-tab__panel) {
|
||||
max-height: 40vh;
|
||||
display: flex;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.companyClass {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
view {
|
||||
width: calc((100% - 20px) / 3);
|
||||
margin-right: 10px;
|
||||
margin-top: 10px;
|
||||
padding: 0 6px;
|
||||
height: 32px;
|
||||
line-height: 32px;
|
||||
text-align: center;
|
||||
border-radius: 16px;
|
||||
box-sizing: border-box;
|
||||
color: #999999;
|
||||
background-color: #e9e9e9;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
& view:nth-child(3n) {
|
||||
margin-right: 0;
|
||||
}
|
||||
& view:hover {
|
||||
background-color: #22ab9b !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
}
|
||||
|
||||
.deviceClass {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
padding-left: 10px;
|
||||
view {
|
||||
width: 100%;
|
||||
margin-top: 10px;
|
||||
padding: 0 6px;
|
||||
height: 32px;
|
||||
line-height: 32px;
|
||||
text-align: center;
|
||||
border-radius: 16px;
|
||||
box-sizing: border-box;
|
||||
color: #999999;
|
||||
background-color: #e9e9e9;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
& view:nth-child(2n) {
|
||||
margin-right: 0;
|
||||
}
|
||||
& view:hover {
|
||||
background-color: #22ab9b !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
}
|
||||
:deep(.van-sidebar-item--select:before) {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -179,13 +179,13 @@ onLoad(async (options) => {
|
|||
fileList: [],
|
||||
}
|
||||
})
|
||||
lossRecordList.value = res.lossRecordList
|
||||
fileListAll.value = res.fileInfoList.map((e) => {
|
||||
lossRecordList.value = res.lossRecordList.map((e) => {
|
||||
return {
|
||||
...e,
|
||||
fileList: [],
|
||||
}
|
||||
})
|
||||
fileListAll.value = res.fileInfoList
|
||||
orderDetails.value = res
|
||||
|
||||
fileListAll.value.forEach((e) => {
|
||||
|
|
|
|||
|
|
@ -6,16 +6,293 @@
|
|||
<text style="color: #000"> 订单详情 </text>
|
||||
</view>
|
||||
|
||||
<van-cell-group inset style="flex: 1"> </van-cell-group>
|
||||
<!-- <van-cell-group inset style="flex: 1"> </van-cell-group> -->
|
||||
|
||||
<scroll-view scroll-y style="padding: 10px; box-sizing: border-box">
|
||||
<view class="order-set">
|
||||
<van-row>
|
||||
<van-col span="12">
|
||||
<view class="company-box">
|
||||
<van-image width="1.5rem" height="1.2rem" :src="companyImg" />
|
||||
<view class="company-name">
|
||||
<view> 安徽送变电公司 </view>
|
||||
<van-image fit="cover" height="0.5rem" :src="companyBg" />
|
||||
</view>
|
||||
</view>
|
||||
</van-col>
|
||||
<van-col span="10" class="contacts">
|
||||
<!-- <van-tag :type="orderType(orderDetails.orderStatus)">
|
||||
{{ orderText(orderDetails.orderStatus) }}
|
||||
</van-tag> -->
|
||||
</van-col>
|
||||
</van-row>
|
||||
|
||||
<view v-for="goods in orderDetailsList">
|
||||
<van-row>
|
||||
<van-col span="24">
|
||||
<view class="items-info">
|
||||
<van-image
|
||||
fit="cover"
|
||||
height="4rem"
|
||||
width="4rem"
|
||||
:src="goods.url"
|
||||
/>
|
||||
<view class="info">
|
||||
<view style="color: #000">
|
||||
{{ goods.deviceName }}
|
||||
<text style="color: var(--van-submit-bar-price-color)">
|
||||
¥ {{ goods.costs }}
|
||||
</text>
|
||||
</view>
|
||||
<view>
|
||||
装备编号:{{ goods.code }}
|
||||
|
||||
<!-- <van-tag :type="orderType(goods.orderStatus)">
|
||||
{{ orderText(goods.orderStatus) }}
|
||||
</van-tag> -->
|
||||
</view>
|
||||
<view>装备型号:{{ goods.typeName }}</view>
|
||||
<view> 租赁时长: {{ goods.days }}</view>
|
||||
</view>
|
||||
</view>
|
||||
</van-col>
|
||||
</van-row>
|
||||
</view>
|
||||
</view>
|
||||
<van-cell-group inset>
|
||||
<TitleTip :title="`订单信息`" />
|
||||
<van-cell title="订单编号:" :value="orderDetails.code" />
|
||||
<van-cell title="下单时间:" :value="orderDetails.orderTime" />
|
||||
<van-cell title="出租单位:" :value="orderDetails.czcompanyName" />
|
||||
<van-cell title="出租人:" :value="orderDetails.person" />
|
||||
<van-cell title="出租人电话:" :value="orderDetails.personPhone" />
|
||||
<van-cell title="承租单位" :value="orderDetails.companyName" />
|
||||
<van-cell title="承租人" :value="orderDetails.nickName" />
|
||||
<van-cell title="承租人电话" :value="orderDetails.phoneNumber" />
|
||||
<van-cell title="收货地址" :value="orderDetails.address" />
|
||||
</van-cell-group>
|
||||
|
||||
<view v-if="orderDetails.orderStatus == 20">
|
||||
<TitleTip :title="`租赁费用明细`" />
|
||||
<view
|
||||
:key="item.id"
|
||||
class="items-container"
|
||||
v-for="(item, index) in orderDetailDtoList"
|
||||
>
|
||||
<view class="count-title">
|
||||
<text></text>
|
||||
<text style="font-weight: bold">设备{{ index + 1 }}</text>
|
||||
</view>
|
||||
<van-cell-group inset>
|
||||
<van-cell title="装备编号" :value="item.code" />
|
||||
<van-cell title="装备名称" :value="item.deviceName" />
|
||||
<van-cell title="装备型号" :value="item.typeName" />
|
||||
<van-cell title="装备数量" :value="item.num" />
|
||||
<van-cell title="租赁单价(元/天)" :value="item.dayLeasePrice" />
|
||||
<van-cell title="租赁天数" :value="item.dateDays" />
|
||||
<van-cell
|
||||
title="租期"
|
||||
:value="`${item.preOutboundTime}至${item.rentOverTime}`"
|
||||
/>
|
||||
<van-cell title="租赁费用" :value="item.costs" />
|
||||
<van-cell title="改价后费用" :value="item.changeCost" />
|
||||
<!-- <van-cell title="操作改价" /> -->
|
||||
<van-field
|
||||
v-model="item.costs"
|
||||
name="密码"
|
||||
label="操作改价"
|
||||
placeholder="请输入改价后费用"
|
||||
/>
|
||||
</van-cell-group>
|
||||
</view>
|
||||
|
||||
<van-empty description="暂无数据" v-if="orderDetailDtoList.length === 0" />
|
||||
|
||||
<TitleTip :title="`维修费用明细`" />
|
||||
|
||||
<view
|
||||
:key="item.id"
|
||||
class="items-container"
|
||||
v-for="(item, index) in repairRecordList"
|
||||
>
|
||||
<view class="count-title">
|
||||
<text></text>
|
||||
<text style="font-weight: bold">设备{{ index + 1 }}</text>
|
||||
</view>
|
||||
<van-cell-group inset>
|
||||
<van-cell title="装备编号" :value="item.code" />
|
||||
<van-cell title="装备名称" :value="item.deviceName" />
|
||||
<van-cell title="装备型号" :value="item.typeName" />
|
||||
<van-cell title="维修数量" :value="item.repairNum" />
|
||||
<van-cell title="维修费用(元)" :value="item.repairPrice" />
|
||||
<van-cell title="改价后费用(元)" :value="item.repairChangePrice" />
|
||||
<van-cell title="附件" center>
|
||||
<template #right-icon>
|
||||
<view>
|
||||
<van-text-ellipsis :content="item.fileList[0]?.fileName" />
|
||||
</view>
|
||||
</template>
|
||||
</van-cell>
|
||||
<van-field
|
||||
v-model="item.repairPrice"
|
||||
label="操作改价"
|
||||
placeholder="请输入改价后费用"
|
||||
/>
|
||||
</van-cell-group>
|
||||
</view>
|
||||
<van-empty description="暂无数据" v-if="repairRecordList.length === 0" />
|
||||
|
||||
<TitleTip :title="`报废费用明细`" />
|
||||
|
||||
<view
|
||||
:key="item.id"
|
||||
class="items-container"
|
||||
v-for="(item, index) in scrapRecordList"
|
||||
>
|
||||
<view class="count-title">
|
||||
<text></text>
|
||||
<text style="font-weight: bold">设备{{ index + 1 }}</text>
|
||||
</view>
|
||||
<van-cell-group inset>
|
||||
<van-cell title="装备编号" :value="item.code" />
|
||||
<van-cell title="装备名称" :value="item.deviceName" />
|
||||
<van-cell title="装备型号" :value="item.typeName" />
|
||||
<van-cell title="报废数量" :value="item.scrapNum" />
|
||||
<van-cell title="报废原因" :value="item.scrapReason" />
|
||||
<van-cell title="报废费用(元)" :value="item.scrapPrice" />
|
||||
<van-cell title="改价后费用(元)" :value="item.scrapChangePrice" />
|
||||
<van-cell title="附件" center>
|
||||
<template #right-icon>
|
||||
<view>
|
||||
<van-text-ellipsis :content="item.fileList[0]?.fileName" />
|
||||
</view>
|
||||
</template>
|
||||
</van-cell>
|
||||
<van-field
|
||||
v-model="item.scrapPrice"
|
||||
name="密码"
|
||||
label="操作改价"
|
||||
placeholder="请输入改价后费用"
|
||||
/>
|
||||
</van-cell-group>
|
||||
</view>
|
||||
<van-empty description="暂无数据" v-if="scrapRecordList.length === 0" />
|
||||
|
||||
<TitleTip :title="`丢失费用明细`" />
|
||||
<view
|
||||
:key="item.id"
|
||||
class="items-container"
|
||||
v-for="(item, index) in lossRecordList"
|
||||
>
|
||||
<view class="count-title">
|
||||
<text></text>
|
||||
<text style="font-weight: bold">设备{{ index + 1 }}</text>
|
||||
</view>
|
||||
<van-cell-group inset>
|
||||
<van-cell title="装备编号" :value="item.code" />
|
||||
<van-cell title="装备名称" :value="item.deviceName" />
|
||||
<van-cell title="装备型号" :value="item.typeName" />
|
||||
<van-cell title="丢失数量" :value="item.lossNum" />
|
||||
<van-cell title="丢失费用(元)" :value="item.lossPrice" />
|
||||
<van-cell title="改价后费用(元)" :value="item.lossChangePrice" />
|
||||
<van-cell title="附件" center>
|
||||
<template #right-icon>
|
||||
<view>
|
||||
<van-text-ellipsis :content="item.fileList[0]?.fileName" />
|
||||
</view>
|
||||
</template>
|
||||
</van-cell>
|
||||
<van-field
|
||||
v-model="item.lossPrice"
|
||||
name="密码"
|
||||
label="操作改价"
|
||||
placeholder="请输入改价后费用"
|
||||
/>
|
||||
</van-cell-group>
|
||||
</view>
|
||||
<van-empty description="暂无数据" v-if="lossRecordList.length === 0" />
|
||||
</view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { useMemberStore } from '@/stores/index.js'
|
||||
const memberStore = useMemberStore()
|
||||
import companyImg from '@/static/goods/company-img.png'
|
||||
import companyBg from '@/static/goods/company-bg.png'
|
||||
import TitleTip from '@/components/TitleTip/index'
|
||||
import { ref } from 'vue'
|
||||
import { editOrderDetailsAPI, getOverhaulAPI } from '@/services/order/index.js'
|
||||
import { onLoad } from '@dcloudio/uni-app'
|
||||
const orderDetailsList = ref([])
|
||||
const orderDetails = ref({})
|
||||
const orderDetailDtoList = ref([])
|
||||
const repairRecordList = ref([])
|
||||
const scrapRecordList = ref([])
|
||||
const lossRecordList = ref([])
|
||||
const fileListAll = ref([])
|
||||
const onClickLeft = () => {
|
||||
uni.navigateBack()
|
||||
uni.reLaunch({
|
||||
url: '/pages/order-list/index',
|
||||
})
|
||||
}
|
||||
|
||||
const getOverhaulData = async (orderId) => {
|
||||
const { data: res } = await getOverhaulAPI({ orderId })
|
||||
orderDetailDtoList.value = res.orderDetailDtoList
|
||||
repairRecordList.value = res.repairRecordList.map((e) => {
|
||||
return {
|
||||
...e,
|
||||
fileList: [],
|
||||
}
|
||||
})
|
||||
scrapRecordList.value = res.scrapRecordList.map((e) => {
|
||||
return {
|
||||
...e,
|
||||
fileList: [],
|
||||
}
|
||||
})
|
||||
lossRecordList.value = res.lossRecordList.map((e) => {
|
||||
return {
|
||||
...e,
|
||||
fileList: [],
|
||||
}
|
||||
})
|
||||
fileListAll.value = res.fileInfoList
|
||||
fileListAll.value.forEach((e) => {
|
||||
repairRecordList.value.forEach((j) => {
|
||||
if (e.modelId == j.maId && e.fileType == 0) {
|
||||
j.fileList.push({
|
||||
fileName: e.fileName,
|
||||
fileUrl: e.fileUrl,
|
||||
})
|
||||
}
|
||||
})
|
||||
scrapRecordList.value.forEach((j) => {
|
||||
if (e.modelId == j.maId && e.fileType == 1) {
|
||||
j.fileList.push({
|
||||
fileName: e.fileName,
|
||||
fileUrl: e.fileUrl,
|
||||
})
|
||||
}
|
||||
})
|
||||
lossRecordList.value.forEach((j) => {
|
||||
if (e.modelId == j.maId && e.fileType == 2) {
|
||||
j.fileList.push({
|
||||
fileName: e.fileName,
|
||||
fileUrl: e.fileUrl,
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
onLoad(async (options) => {
|
||||
const { data: res } = await editOrderDetailsAPI({ orderId: options?.orderId })
|
||||
orderDetails.value = res
|
||||
orderDetailsList.value = res.detailsList
|
||||
if (res.orderStatus == 20) {
|
||||
getOverhaulData(options?.orderId)
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
|
@ -27,6 +304,83 @@ const onClickLeft = () => {
|
|||
}
|
||||
|
||||
:deep(.van-cell-group--inset) {
|
||||
padding: 15px 0;
|
||||
padding: 5px 10px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.order-set {
|
||||
padding: 10px;
|
||||
margin-bottom: 10px;
|
||||
box-sizing: border-box;
|
||||
border-radius: 6px;
|
||||
background-color: #fff;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
||||
|
||||
.van-row {
|
||||
padding: 2px 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
.company-box {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
.company-name {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
view {
|
||||
padding-left: 6px;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.van-image {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
.items-info {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.info {
|
||||
font-size: 14px;
|
||||
flex: 1;
|
||||
|
||||
view {
|
||||
width: 100%;
|
||||
padding: 1px 0 1px 10px;
|
||||
font-size: 13px;
|
||||
color: #6f6f6f;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
|
||||
.van-image {
|
||||
margin: 0 4px;
|
||||
}
|
||||
}
|
||||
|
||||
& view:first-child {
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
.items-container {
|
||||
margin-bottom: 10px;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
|
||||
|
||||
.count-title text:first-child {
|
||||
display: inline-block;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
border-radius: 5px;
|
||||
background-color: #ff660f;
|
||||
margin-right: 8px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -88,7 +88,7 @@
|
|||
(item.orderStatus == 1 || item.orderStatus == 2) &&
|
||||
orderQueryParams.flag
|
||||
"
|
||||
@click="onEditOrderStatus(item, parseInt(item.orderStatus))"
|
||||
@click.stop="onEditOrderStatus(item, parseInt(item.orderStatus))"
|
||||
>
|
||||
{{ initBtnText(item.orderStatus) }}
|
||||
</van-button>
|
||||
|
|
@ -792,7 +792,7 @@ const onSubmitRepairResult = () => {
|
|||
}
|
||||
|
||||
const onJumpOrderDetails = (item) => {
|
||||
uni.navigateTo({ url: '/pages/order-details/index' })
|
||||
uni.navigateTo({ url: `/pages/order-details/index?orderId=${item.orderId}` })
|
||||
}
|
||||
|
||||
onLoad((options) => {
|
||||
|
|
|
|||
|
|
@ -203,13 +203,13 @@ onLoad(async (options) => {
|
|||
fileList: [],
|
||||
}
|
||||
})
|
||||
lossRecordList.value = res.lossRecordList
|
||||
fileListAll.value = res.fileInfoList.map((e) => {
|
||||
lossRecordList.value = res.lossRecordList.map((e) => {
|
||||
return {
|
||||
...e,
|
||||
fileList: [],
|
||||
}
|
||||
})
|
||||
fileListAll.value = res.fileInfoList
|
||||
orderDetails.value = res
|
||||
|
||||
fileListAll.value.forEach((e) => {
|
||||
|
|
|
|||
Loading…
Reference in New Issue