7 changed files with 331 additions and 10 deletions
Unified View
Diff Options
-
10apis/deviceApi.js
-
8apis/orderApi.js
-
276pages/device-production-info/OrderItem.vue
-
36pages/device-production-info/index.vue
-
2pages/digital-workshops/index.vue
-
4pages/order-info/index.vue
-
5utils/http/index.js
@ -0,0 +1,276 @@ |
|||||
|
<template> |
||||
|
<view class="list-item flex-col" style="margin-top: 24rpx;" @click="emit"> |
||||
|
<view class="flex-row-center-space" style="height: 72rpx;font-size: 28rpx;"> |
||||
|
<view class="flex-row-center-center"> |
||||
|
<image src="/static/imgs/tabbar/mine-gray.png" style="width: 48rpx;height: 48rpx;"/> |
||||
|
<view style="margin-left: 8rpx;font-size: 28rpx;">{{item.customerEnterpriseName}}</view> |
||||
|
</view> |
||||
|
<view :style="{ color: statusColor(item.status) }">生产中</view> |
||||
|
</view> |
||||
|
<view class="flex-row" style="padding: 16rpx 0rpx;border-top: 1rpx solid #f3f3f3;"> |
||||
|
<image style="height: 160rpx;width: 160rpx;" :src="item.productImgUrl"></image> |
||||
|
<view class="flex-col" style="margin-left: 16rpx;flex: 1;"> |
||||
|
<view class="flex-row-center-space"> |
||||
|
<view style="font-size: 30rpx;">{{item.productName}}</view> |
||||
|
<view style="font-size: 28rpx;">{{item.quantityCompletion}} / {{item.productionQuantity}}个</view> |
||||
|
</view> |
||||
|
<view style="font-size: 24rpx;color: #cccccc;margin-top: 16rpx;">尺寸:{{item.trimmedSize}}</view> |
||||
|
<view style="font-size: 24rpx;color: #cccccc;margin-top: 4rpx;" v-if="item.materialsRequirement">材质:{{item.materialsRequirement}}</view> |
||||
|
<view class="flex-row-center-start" style="margin-top: 24rpx;"> |
||||
|
<image src="/static/imgs/cart/icon-time.png" style="width: 40rpx;height: 40rpx;"/> |
||||
|
<view style="font-size: 28rpx;color: #cccccc;">交付日期:{{item.finishDate || '- -'}}</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</template> |
||||
|
#f3f3f3 |
||||
|
<script> |
||||
|
import { StatusMap } from '@/enums/index' |
||||
|
export default { |
||||
|
props: { |
||||
|
item: { |
||||
|
type: Object, |
||||
|
default: () => ({}) |
||||
|
} |
||||
|
}, |
||||
|
data() { |
||||
|
return { |
||||
|
orderStatusMap: Object.freeze(StatusMap) |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
emit() { |
||||
|
this.$emit('click', this.item) |
||||
|
}, |
||||
|
statusColor(status){ |
||||
|
if(status == 3){ |
||||
|
return '#028A00' |
||||
|
} |
||||
|
if(status == 4){ |
||||
|
return '#007AFF' |
||||
|
} |
||||
|
return '#999999' |
||||
|
}, |
||||
|
translate(time) { |
||||
|
if (!time) { |
||||
|
return '' |
||||
|
} |
||||
|
time = time.replace(/-/g, '/') |
||||
|
let date = new Date(time) |
||||
|
let month = date.getMonth() + 1 |
||||
|
let day = date.getDate() |
||||
|
let hour = date.getHours() |
||||
|
let minute = date.getMinutes() |
||||
|
if (minute < 10) { |
||||
|
minute = '0' + minute |
||||
|
} |
||||
|
return `最近开机 ${month}月${day}日 ${hour}:${minute}` |
||||
|
} |
||||
|
}, |
||||
|
filters: { |
||||
|
translateRate(rate) { |
||||
|
if (!rate) { |
||||
|
rate = 0 |
||||
|
} else { |
||||
|
rate = rate.toFixed(2) |
||||
|
} |
||||
|
return rate |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="scss" scoped> |
||||
|
.list-item { |
||||
|
padding: 0rpx 20rpx; |
||||
|
background-color: white; |
||||
|
// border-radius: 16rpx; |
||||
|
&:last-of-type { |
||||
|
margin-top: 20rpx; |
||||
|
} |
||||
|
.left-section_2 { |
||||
|
color: rgb(255, 255, 255); |
||||
|
font-size: 20rpx; |
||||
|
font-weight: 500; |
||||
|
line-height: 28rpx; |
||||
|
white-space: nowrap; |
||||
|
border-radius: 15rpx; |
||||
|
width: 180rpx; |
||||
|
height: 180rpx; |
||||
|
position: relative; |
||||
|
overflow: hidden; |
||||
|
.text-wrapper_3 { |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
padding-top: 4rpx; |
||||
|
background-color: rgb(82, 196, 26); |
||||
|
border-radius: 15rpx 0px 15rpx 0px; |
||||
|
.text_21 { |
||||
|
margin-left: 6rpx; |
||||
|
margin-right: 7rpx; |
||||
|
} |
||||
|
} |
||||
|
.text-wrapper_4 { |
||||
|
position: absolute; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
padding: 4rpx; |
||||
|
background-color: #cccccc88; |
||||
|
border-radius: 0rpx 8px 0rpx 15rpx; |
||||
|
.text_21 { |
||||
|
margin-left: 6rpx; |
||||
|
margin-right: 7rpx; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.text-wrapper_3 { |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
padding-top: 4rpx; |
||||
|
background-color: rgb(82, 196, 26); |
||||
|
border-radius: 15rpx 0px 15rpx 0px; |
||||
|
.text_21 { |
||||
|
margin-left: 6rpx; |
||||
|
margin-right: 7rpx; |
||||
|
} |
||||
|
} .view_16 { |
||||
|
padding-top: initial; |
||||
|
background-color: rgb(255, 72, 73); |
||||
|
padding: 3rpx 0 2rpx; |
||||
|
width: 73rpx; |
||||
|
} |
||||
|
.avatar { |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
} |
||||
|
} |
||||
|
.right-group { |
||||
|
margin-left: 5rpx; |
||||
|
flex: 1 1 auto; |
||||
|
.top-group { |
||||
|
padding: 0 0 0 26rpx; |
||||
|
color: rgb(0, 0, 0); |
||||
|
font-size: 30rpx; |
||||
|
font-weight: 500; |
||||
|
line-height: 42rpx; |
||||
|
white-space: nowrap; |
||||
|
align-items: center; |
||||
|
.name { |
||||
|
max-width: 360rpx; |
||||
|
} |
||||
|
.image_5 { |
||||
|
margin-left: 8rpx; |
||||
|
width: 24rpx; |
||||
|
height: 24rpx; |
||||
|
} |
||||
|
} |
||||
|
.equal-division { |
||||
|
margin-left: 26rpx; |
||||
|
.equal-division-item { |
||||
|
padding: 10rpx 0; |
||||
|
flex: 1 1 146rpx; |
||||
|
.text_24 { |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 22rpx; |
||||
|
line-height: 30rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
.bottom-group_1 { |
||||
|
margin-top: 4rpx; |
||||
|
.text_26 { |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 32rpx; |
||||
|
font-weight: 500; |
||||
|
line-height: 45rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
.text_28 { |
||||
|
margin: 8rpx 0 6rpx 10rpx; |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 22rpx; |
||||
|
line-height: 30rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.equal-division-item_1 { |
||||
|
padding: 10rpx 23rpx 10rpx 36rpx; |
||||
|
flex: 1 1 146rpx; |
||||
|
.text_30 { |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 22rpx; |
||||
|
line-height: 30rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
.bottom-group_2 { |
||||
|
margin-top: 4rpx; |
||||
|
.text_32 { |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 32rpx; |
||||
|
font-weight: 500; |
||||
|
line-height: 45rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
.text_34 { |
||||
|
margin: 8rpx 0 6rpx 10rpx; |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 22rpx; |
||||
|
line-height: 30rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.equal-division-item_2 { |
||||
|
padding: 10rpx 24rpx 10rpx 26rpx; |
||||
|
flex: 1 1 146rpx; |
||||
|
.text_36 { |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 22rpx; |
||||
|
line-height: 30rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
.bottom-group_3 { |
||||
|
margin-top: 4rpx; |
||||
|
.text_38 { |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 32rpx; |
||||
|
font-weight: 500; |
||||
|
line-height: 45rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
.text_40 { |
||||
|
margin: 8rpx 0 6rpx 10rpx; |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 22rpx; |
||||
|
line-height: 30rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.bottom-group_4 { |
||||
|
margin-top: 14rpx; |
||||
|
padding: 0 26rpx; |
||||
|
color: rgb(136, 136, 136); |
||||
|
font-size: 20rpx; |
||||
|
line-height: 28rpx; |
||||
|
white-space: nowrap; |
||||
|
.text_43 { |
||||
|
margin-left: 11rpx; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.text_59 { |
||||
|
margin-top: 23rpx; |
||||
|
padding-left: 26rpx; |
||||
|
color: rgb(24, 16, 89); |
||||
|
font-size: 26rpx; |
||||
|
font-weight: 500; |
||||
|
line-height: 37rpx; |
||||
|
white-space: nowrap; |
||||
|
} |
||||
|
} |
||||
|
</style> |
||||
Write
Preview
Loading…
Cancel
Save