Browse Source

修改问题

master
396316021 1 year ago
parent
commit
1ddb0e2da9
  1. 3
      pages/ChatDetail/index.vue
  2. 507
      pages/FeedLog/components/FeedLog.vue
  3. 512
      pages/FeedLog/index.vue
  4. 2
      pages/Index/components/ChatPage/index.vue
  5. 14
      pages/Index/components/OrderPage/index.vue
  6. 8
      pages/Index/index.vue
  7. 3097
      pages/OrderConfirm/end.vue
  8. 30
      pages/OrderDetail/components/fomItem.vue
  9. 102
      pages/OrderDetail/index.vue
  10. 3
      pages/OrderPage/index.vue
  11. 14
      pages/UserOrderPage/index.vue
  12. 32
      uni_modules/uv-upload/components/uv-upload/uv-upload.vue

3
pages/ChatDetail/index.vue

@ -96,7 +96,8 @@ export default {
},
onLoad(options) {
let user = uni.getStorageSync('user');
if(user.is_waitstaff !== 1 ){
console.log(user)
if(user.is_waitstaff !== 1 && user.is_waitstaff !== 3){
this.getToken(options.id, options.type ?? 1);
}else if(options.is_seize == 1){
this.connectChat(options.id);

507
pages/FeedLog/components/FeedLog.vue

@ -0,0 +1,507 @@
<template>
<view class="app-wallpaper" :style="{
backgroundImage:'url('+staticImage.wallpaperBgImage+')'
}">
<view class="feed-top">
<view class="feed-container">
<view class="feed-content">
<view class="top-img">
<u-image class="img" mode="aspectFill" width="100%" height="600" :src="detail.avatar || staticImage.banner">
</u-image>
</view>
<view class="top-content row">
<view class="content-item col-6 row">
<view class="item-title">爱称</view>
<view class="item-content">{{detail.name}}</view>
</view>
<view class="content-item col-6 row">
<view class="item-title">性别</view>
<view class="item-content">{{detail.sex}}</view>
</view>
<view class="content-item col-6 row">
<view class="item-title">体重</view>
<view class="item-content">{{detail.weight}}kg</view>
</view>
<view class="content-item col-6 row">
<view class="item-title">种类</view>
<view class="item-content">{{detail.type_name}}</view>
</view>
</view>
</view>
<view class="feed-background">
<view class="feed-background-content"></view>
</view>
</view>
</view>
<view class="feed-bottom">
<view class="feed-container">
<view class="feed-gun">
<image class="img" mode="heightFix" :src="staticImage.feedGun" />
</view>
<view class="feed-content">
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="水碗饭碗"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.meal" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.meal_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.meal_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'meal_imgs')}"
@afterRead="(res) => {uploadPut(res,'meal_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="主食情况"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.food" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.food_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.food_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'food_imgs')}"
@afterRead="(res) => {uploadPut(res,'food_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="零食小吃"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.snack" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.snack_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.snack_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'snack_imgs')}"
@afterRead="(res) => {uploadPut(res,'snack_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="喂药擦药"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.drug" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.drug_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.drug_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'drug_imgs')}"
@afterRead="(res) => {uploadPut(res,'drug_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="需要注意"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.note" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.note_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.note_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'note_imgs')}"
@afterRead="(res) => {uploadPut(res,'note_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="用品位置"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.goods" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.goods_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.goods_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'goods_imgs')}"
@afterRead="(res) => {uploadPut(res,'goods_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="外出路线"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.line" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.line_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.line_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'line_imgs')}"
@afterRead="(res) => {uploadPut(res,'line_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="其它事项"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.other" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.other_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.other_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'other_imgs')}"
@afterRead="(res) => {uploadPut(res,'other_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
</view>
<view class="feed-background">
<view class="feed-background-content"></view>
</view>
</view>
</view>
</view>
<view v-if="show_button">
<view class="footer-menu row" v-if="(type === 'detail')">
<view class="footer-button col-12">
<MzButton
title="修改"
button-color="#4DC3B8"
font-color="#FFFFFF"
button-width="250rpx"
@click="redirtTo('/pages/FeedLog/index?type=create&pet_id='+pet_id)"
>
</MzButton>
</view>
</view>
<view class="footer-menu row" v-if="(type === 'create')">
<view class="footer-button col-6">
<MzButton
title="取消"
button-color="#ffffff"
font-color="##262626"
button-width="250rpx"
@click="redirtTo('/pages/FeedLog/index?type=detail&pet_id='+pet_id)"
>
</MzButton>
</view>
<view class="footer-button col-6">
<MzButton
title="保存"
button-color="#4DC3B8"
font-color="#FFFFFF"
button-width="250rpx"
@click="submit"
>
</MzButton>
</view>
</view>
</view>
<u-overlay :show="imageShow" @click="imageShow = false">
<view class="" style="display:flex;align-items: center;justify-content:center;width:100%;height:100vh;">
<u-image mode="widthFix" :src="imageUrl" height="auto" width="100vw"></u-image>
</view>
</u-overlay>
</template>
<script>
import {
imghost
} from '@/config/host.js'
import MzButton from '@/components/MzButton/Index.vue';
import api from '@/utils/functions.js';
import {editFeed, feedLog} from "@/api/pet";
export default {
components: {
MzButton
},
props:{
pet_id:{
type:Number,
default:0,
},
type:{
type:String,
default: 'detail',
},
show_button:{
type:Boolean,
default: true,
},
},
data() {
return {
collapseValue:[],
imageShow:false,
imageUrl:'',
title: 'Hello',
loading: true,
staticImage: {
screenActiveImg: imghost + '/order-screen-active.png',
orderCardBackground: imghost + '/order-card-background.png',
wallpaperBgImage:imghost +'/background.png',
petGun:imghost +'/pet_gun.png',
feedGun:imghost +'/feed-gun.png',
addPet:imghost +'/add-pet.png',
banner:imghost +'/banner.png',
feedUpload:imghost +'/feed-upload.png',
},
// pet_id:0,
detail:{
name:'',
sex:'',
weight:'',
type_name:'',
avatar:'',
feedlist:{
meal:'',
meal_imgs:[],
food:'',
food_imgs:[],
snack:'',
snack_imgs:[],
drug:'',
drug_imgs:[],
goods:'',
goods_imgs:[],
line:'',
line_imgs:[],
note:'',
note_imgs:[],
other:'',
other_imgs:[],
},
},
images:{
meal_imgs:[],
food_imgs:[],
snack_imgs:[],
drug_imgs:[],
goods_imgs:[],
line_imgs:[],
note_imgs:[],
other_imgs:[],
},
}
},
methods: {
showImage(url){
this.imageUrl = url;
this.imageShow = true;
},
redirtTo(url){
uni.redirectTo({
url:url
})
},
uploadSubmit(data,fileName = ''){
this.detail.feedlist[fileName] = data.map(item => {
return {url:item.url,type:item.type};
})
},
uploadShow(data,fileName = ''){
let result = [];
try{
data.forEach(item => {
result.push({url:item.url,type:item.type})
})
}catch (e){
this.images[fileName] = [];
}
this.images[fileName] = result;
},
uploadPut(event,fileName = ''){
let lists = [].concat(event.file);
let fileListLen = this.images[fileName].length;
lists.map((item) => {
this.images[fileName].push({
...item,
status: 'uploading',
message: '上传中',
});
});
for (let i = 0; i < lists.length; i++) {
api.uploadOssFile(lists[i].url).then(res => {
let item = this.images[fileName][fileListLen];
this.images[fileName].splice(fileListLen, 1, {
...item,
status: 'success',
message: '',
url: res.show_path,
thumb: res.show_path,
type:api.getFileType(res.show_path)
});
fileListLen++;
})
}
},
uploadDel(fileIndex,fileName = ''){
this.images[fileName].splice(fileIndex.index,1);
},
navTo(url){
uni.navigateTo({
url:url
})
},
getFeedLog(pet_id) {
let that = this;
feedLog(pet_id).then(data => {
let feedlist = this.detail.feedlist;
this.detail = data.data;
if(data.data.feedlist.length===0){
this.detail.feedlist = feedlist;
}
this.detail = data.data;
// if(this.type !== 'detail'){
let images = [
'meal_imgs',
'food_imgs',
'snack_imgs',
'drug_imgs',
'goods_imgs',
'line_imgs',
'note_imgs',
'other_imgs'
];
images.forEach((item,index) => {
that.uploadShow(data.data.feedlist[item],item);
});
this.collapseValue = ['collapse'];
// }
})
},
submit(){
let that = this;
let data = [
'meal_imgs',
'food_imgs',
'snack_imgs',
'drug_imgs',
'goods_imgs',
'line_imgs',
'note_imgs',
'other_imgs'
];
new Promise((resolve,reject)=>{
data.forEach((item,index) => {
that.uploadSubmit(this.images[item],item);
if(index === data.length-1){
resolve()
}
});
}).then(res => {
console.log('this.detail.feedlist',this.detail.feedlist)
this.detail.feedlist.pet_id = this.pet_id
editFeed(this.detail.feedlist).then(res => {
console.log(res)
api.success('保存成功').then(() => {
uni.navigateBack();
})
})
});
},
},
mounted() {
this.getFeedLog(this.pet_id);
},
watch:{
pet_id(newValue){
if(this.type === 'detail'){
this.getFeedLog(newValue);
}
}
}
}
</script>
<style lang="scss">
@import './index.scss';
</style>

512
pages/FeedLog/index.vue

@ -1,511 +1,27 @@
<template>
<HeaderNav title="喂养档案" :is-back="true"></HeaderNav>
<view class="app-wallpaper" :style="{
backgroundImage:'url('+staticImage.wallpaperBgImage+')'
}">
<view class="feed-top">
<view class="feed-container">
<view class="feed-content">
<view class="top-img">
<u-image class="img" mode="aspectFill" width="100%" height="600" :src="detail.avatar || staticImage.banner">
</u-image>
</view>
<view class="top-content row">
<view class="content-item col-6 row">
<view class="item-title">爱称</view>
<view class="item-content">{{detail.name}}</view>
</view>
<view class="content-item col-6 row">
<view class="item-title">性别</view>
<view class="item-content">{{detail.sex}}</view>
</view>
<view class="content-item col-6 row">
<view class="item-title">体重</view>
<view class="item-content">{{detail.weight}}kg</view>
</view>
<view class="content-item col-6 row">
<view class="item-title">种类</view>
<view class="item-content">{{detail.type_name}}</view>
</view>
</view>
</view>
<view class="feed-background">
<view class="feed-background-content"></view>
</view>
</view>
</view>
<view class="feed-bottom">
<view class="feed-container">
<view class="feed-gun">
<image class="img" mode="heightFix" :src="staticImage.feedGun" />
</view>
<view class="feed-content">
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="水碗饭碗"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.meal" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.meal_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.meal_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'meal_imgs')}"
@afterRead="(res) => {uploadPut(res,'meal_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="主食情况"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.food" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.food_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.food_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'food_imgs')}"
@afterRead="(res) => {uploadPut(res,'food_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="零食小吃"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.snack" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.snack_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.snack_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'snack_imgs')}"
@afterRead="(res) => {uploadPut(res,'snack_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="喂药擦药"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.drug" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.drug_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.drug_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'drug_imgs')}"
@afterRead="(res) => {uploadPut(res,'drug_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="需要注意"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.note" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.note_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.note_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'note_imgs')}"
@afterRead="(res) => {uploadPut(res,'note_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="用品位置"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.goods" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.goods_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.goods_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'goods_imgs')}"
@afterRead="(res) => {uploadPut(res,'goods_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="外出路线"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.line" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.line_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.line_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'line_imgs')}"
@afterRead="(res) => {uploadPut(res,'line_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
<u-collapse :value="collapseValue">
<u-collapse-item
name="collapse"
title="其它事项"
>
<u-textarea border="none" :disabled="(type !== 'create')" v-model="detail.feedlist.other" placeholder="请输入内容" ></u-textarea>
<uv-upload
width="160rpx"
height="160rpx"
accept="media"
:fileList="images.other_imgs"
name="1"
multiple
:maxCount="(type === 'create')?10:images.other_imgs.length"
:disabled="(type !== 'create')"
:deletable="(type === 'create')"
@delete="(res) => {uploadDel(res,'other_imgs')}"
@afterRead="(res) => {uploadPut(res,'other_imgs')}"
>
<u-image :src="staticImage.feedUpload"
mode="widthFix" width="130rpx" height="130rpx"></u-image>
</uv-upload>
</u-collapse-item>
</u-collapse>
</view>
<view class="feed-background">
<view class="feed-background-content"></view>
</view>
</view>
</view>
</view>
<view class="footer-menu row" v-if="(type === 'detail')">
<!-- <view class="footer-button col-6">-->
<!-- <MzButton-->
<!-- title="删除"-->
<!-- button-color="#ffffff"-->
<!-- font-color="##262626"-->
<!-- button-width="250rpx"-->
<!-- @click=""-->
<!-- >-->
<!-- </MzButton>-->
<!-- </view>-->
<view class="footer-button col-12">
<MzButton
title="修改"
button-color="#4DC3B8"
font-color="#FFFFFF"
button-width="250rpx"
@click="redirtTo('/pages/FeedLog/index?type=create&pet_id='+pet_id)"
>
</MzButton>
</view>
</view>
<view class="footer-menu row" v-if="(type === 'create')">
<view class="footer-button col-6">
<MzButton
title="取消"
button-color="#ffffff"
font-color="##262626"
button-width="250rpx"
@click="redirtTo('/pages/FeedLog/index?type=detail&pet_id='+pet_id)"
>
</MzButton>
</view>
<view class="footer-button col-6">
<MzButton
title="保存"
button-color="#4DC3B8"
font-color="#FFFFFF"
button-width="250rpx"
@click="submit"
>
</MzButton>
</view>
</view>
<u-overlay :show="imageShow" @click="imageShow = false">
<view class="" style="display:flex;align-items: center;justify-content:center;width:100%;height:100vh;">
<u-image mode="widthFix" :src="imageUrl" height="auto" width="100vw"></u-image>
</view>
</u-overlay>
<FeedLog :pet_id="row" :type="type" v-for="row in pet_id" :show_button="pet_id.length === 1"></FeedLog>
</template>
<script>
import {
imghost
} from '@/config/host.js'
import HeaderNav from '@/components/HeaderNav/Index.vue';
import FooterNav from '@/components/FooterNav/Index.vue';
import RightNav from '@/components/RightNav/Index.vue';
import MzButton from '@/components/MzButton/Index.vue';
import api from '@/utils/functions.js';
import {editFeed, feedLog} from "@/api/pet";
import feed from "@/pages/Feed/index.vue";
import HeaderNav from '@/components/HeaderNav/Index.vue';
import FeedLog from "./components/FeedLog.vue";
export default {
components: {
HeaderNav,
FooterNav,
RightNav,
MzButton
FeedLog,
HeaderNav,
},
onShow(){
if(this.type === 'detail'){
this.getFeedLog(this.pet_id);
}
},
onReady() {
uni.$u.sleep(100).then(() => {
this.collapseValue = ['collapse'];
});
},
data() {
return {
collapseValue:[],
imageShow:false,
imageUrl:'',
title: 'Hello',
loading: true,
return {
pet_id:[],
type:'detail',
staticImage: {
screenActiveImg: imghost + '/order-screen-active.png',
orderCardBackground: imghost + '/order-card-background.png',
wallpaperBgImage:imghost +'/background.png',
petGun:imghost +'/pet_gun.png',
feedGun:imghost +'/feed-gun.png',
addPet:imghost +'/add-pet.png',
banner:imghost +'/banner.png',
feedUpload:imghost +'/feed-upload.png',
},
pet_id:0,
detail:{
name:'',
sex:'',
weight:'',
type_name:'',
avatar:'',
feedlist:{
meal:'',
meal_imgs:[],
food:'',
food_imgs:[],
snack:'',
snack_imgs:[],
drug:'',
drug_imgs:[],
goods:'',
goods_imgs:[],
line:'',
line_imgs:[],
note:'',
note_imgs:[],
other:'',
other_imgs:[],
},
},
images:{
meal_imgs:[],
food_imgs:[],
snack_imgs:[],
drug_imgs:[],
goods_imgs:[],
line_imgs:[],
note_imgs:[],
other_imgs:[],
},
}
}
},
onLoad(options) {
this.pet_id = options.pet_id;
this.type = options.type || 'detail';
this.getFeedLog(options.pet_id);
},
methods: {
showImage(url){
this.imageUrl = url;
this.imageShow = true;
},
redirtTo(url){
uni.redirectTo({
url:url
})
},
uploadSubmit(data,fileName = ''){
this.detail.feedlist[fileName] = data.map(item => {
return {url:item.url,type:item.type};
})
},
uploadShow(data,fileName = ''){
let result = [];
try{
data.forEach(item => {
result.push({url:item.url,type:item.type})
})
}catch (e){
this.images[fileName] = [];
}
this.images[fileName] = result;
},
uploadPut(event,fileName = ''){
let lists = [].concat(event.file);
let fileListLen = this.images[fileName].length;
lists.map((item) => {
this.images[fileName].push({
...item,
status: 'uploading',
message: '上传中',
});
});
for (let i = 0; i < lists.length; i++) {
api.uploadOssFile(lists[i].url).then(res => {
let item = this.images[fileName][fileListLen];
this.images[fileName].splice(fileListLen, 1, {
...item,
status: 'success',
message: '',
url: res.show_path,
thumb: res.show_path,
type:api.getFileType(res.show_path)
});
fileListLen++;
})
}
},
uploadDel(fileIndex,fileName = ''){
this.images[fileName].splice(fileIndex.index,1);
},
navTo(url){
uni.navigateTo({
url:url
})
},
getFeedLog(pet_id) {
let that = this;
feedLog(pet_id).then(data => {
let feedlist = this.detail.feedlist;
this.detail = data.data;
if(data.data.feedlist.length===0){
this.detail.feedlist = feedlist;
}
this.detail = data.data;
// if(this.type !== 'detail'){
let images = [
'meal_imgs',
'food_imgs',
'snack_imgs',
'drug_imgs',
'goods_imgs',
'line_imgs',
'note_imgs',
'other_imgs'
];
images.forEach((item,index) => {
that.uploadShow(data.data.feedlist[item],item);
});
// }
})
},
submit(){
let that = this;
let data = [
'meal_imgs',
'food_imgs',
'snack_imgs',
'drug_imgs',
'goods_imgs',
'line_imgs',
'note_imgs',
'other_imgs'
];
new Promise((resolve,reject)=>{
data.forEach((item,index) => {
that.uploadSubmit(this.images[item],item);
if(index === data.length-1){
resolve()
}
});
}).then(res => {
console.log('this.detail.feedlist',this.detail.feedlist)
this.detail.feedlist.pet_id = this.pet_id
editFeed(this.detail.feedlist).then(res => {
console.log(res)
api.success('保存成功').then(() => {
uni.navigateBack();
})
})
});
},
this.pet_id = options.pet_id.split(',');
this.type = options.type ? options.type : 'detail';
console.log(this.type)
},
onPageScroll(res) {
if(res.scrollTop <= 20){
@ -519,8 +35,4 @@
api.navHeight().navHeight + (api.navHeight().headerPadding * 2))
}
}
</script>
<style lang="scss">
@import './components/index.scss';
</style>
</script>

2
pages/Index/components/ChatPage/index.vue

@ -94,7 +94,7 @@
}
},
chatDetail(item){
let url = (this.$store.state.userInfo.is_waitstaff === 1)?'/pages/ChatDetail/index?id='+item.chat_id:'/pages/ChatDetail/index?id='+item.order_service_id;
let url = (this.$store.state.userInfo.is_waitstaff === 1 || this.$store.state.userInfo.is_waitstaff === 3)?'/pages/ChatDetail/index?id='+item.chat_id:'/pages/ChatDetail/index?id='+item.order_service_id;
uni.navigateTo({
url:url
});

14
pages/Index/components/OrderPage/index.vue

@ -76,13 +76,13 @@
button-color="#F7E1C3"
button-width="100%"></MzButton>
</view>
<!-- <view class="card-button" @click="navTo('/pages/FeedLog/index?pet_id=' + item.pet_id)">-->
<!-- <MzButton-->
<!-- title="喂养档案"-->
<!-- font-color="#FFFFFF"-->
<!-- button-color="#4DC3B8"-->
<!-- button-width="100%"></MzButton>-->
<!-- </view>-->
<view class="card-button" @click="navTo('/pages/FeedLog/index?pet_id=' + item.pet_id.join(','))">
<MzButton
title="喂养档案"
font-color="#FFFFFF"
button-color="#4DC3B8"
button-width="100%"></MzButton>
</view>
<view v-if="item.status === 1" class="card-button" @click="navTo('/pages/OrderConfirm/end?id=' + item.id)">
<MzButton
title="确认完成"

8
pages/Index/index.vue

@ -167,10 +167,10 @@
if(this.inter)clearInterval(this.inter);
this.getCountBadges(type);
this.inter = setInterval(() => {
// this.getCountBadges(type);
this.footGroup[2].badge = res.data.count_user;
this.footGroup[1].badge = res.data.count_worker;
this.kFbadge = res.data.count_kf;
this.getCountBadges(type);
// this.footGroup[2].badge = res.data.count_user;
// this.footGroup[1].badge = res.data.count_worker;
// this.kFbadge = res.data.count_kf;
},5000)
}
},

3097
pages/OrderConfirm/end.vue

File diff suppressed because it is too large Load Diff

30
pages/OrderDetail/components/fomItem.vue

@ -25,12 +25,20 @@ export default {
return {
imageUrl: '',
imageShow: false,
videoUrl: '',
videoShow: false,
}
},
methods: {
showBigImage(imgUrl) {
this.imageUrl = imgUrl;
this.imageShow = true;
this.$emit('showBigImage',imgUrl)
},
showBigVideo(videoUrl) {
this.videoUrl = videoUrl;
this.videoShow = true;
this.$emit('showBigVideo',videoUrl)
},
getString(value) {
let typeStr = typeof value;
@ -90,11 +98,12 @@ export default {
<view class="row">
<view class="col-4" style="padding:10rpx;" v-for="(item,index) in (this.type === 'media')?data:data.upload">
<view class="item-image" v-if="item.type === 'image'">
<u-image @click="showBigImage(item.url)" :src="item.url" mode="aspectFill" width="100%"></u-image>
<u-image :lazy-load="true" @click="showBigImage(item.url)" :src="item.url" mode="aspectFill" width="100%"></u-image>
</view>
<view class="item-video" v-else>
<video v-if="item.url.indexOf('wxfile') === -1" mode="aspectFill" :src="item.url"
style="width:100%;height:200rpx;border-radius: 16rpx;border:2rpx solid #262626;"></video>
<u-image :lazy-load="true" @click="showBigVideo(item.url)" :src="item.thumb" mode="aspectFill" width="100%"></u-image>
<!-- <video v-if="item.url.indexOf('wxfile') === -1" mode="aspectFill" :src="item.url"-->
<!-- style="width:100%;height:200rpx;border-radius: 16rpx;border:2rpx solid #262626;"></video>-->
</view>
</view>
</view>
@ -106,11 +115,16 @@ export default {
</view>
</view>
</view>
<u-overlay :show="imageShow" @click="imageShow = false">
<view class="" style="display:flex;align-items: center;justify-content:center;width:100%;height:100vh;">
<u-image mode="widthFix" :src="imageUrl" height="auto" width="100vw"></u-image>
</view>
</u-overlay>
<!-- <u-overlay :show="imageShow" @click="imageShow = false">-->
<!-- <view class="" style="display:flex;align-items: center;justify-content:center;width:100%;height:100vh;">-->
<!-- <u-image mode="widthFix" :src="imageUrl" height="auto" width="100vw"></u-image>-->
<!-- </view>-->
<!-- </u-overlay>-->
<!-- <u-overlay :show="videoShow" @click="videoShow = false">-->
<!-- <view class="" style="display:flex;align-items: center;justify-content:center;width:100%;height:100vh;">-->
<!-- <video mode="widthFix" :src="videoUrl" height="auto" width="100vw"></video>-->
<!-- </view>-->
<!-- </u-overlay>-->
</template>
<style scoped lang="scss">

102
pages/OrderDetail/index.vue

@ -191,17 +191,15 @@
<view class="pet-detail-gun col">
<image class="img" mode="heightFix" :src="staticImage.petGun"/>
</view>
<view class="pet-detail-content">
<view class="content-item"><view>开始订单</view></view>
<FomItem :data="service.startservice.arrival_time" name="到达时间" type="text"></FomItem>
<FomItem :data="service.startservice.worker_confirm" name="宠物师确认" type="media"></FomItem>
<FomItem :data="service.startservice.hand_disinfect" name="手部消毒" type="default"></FomItem>
<FomItem :data="service.startservice.body_disinfect" name="全身消毒" type="default"></FomItem>
<FomItem :data="service.startservice.key" name="钥匙开启/收取" type="default"></FomItem>
<FomItem :data="service.startservice.key" name="钥匙描述" type="default"></FomItem>
<FomItem :data="service.startservice.service_tools" name="服务工具" type="text"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" :data="service.startservice.arrival_time" name="到达时间" type="text"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" :data="service.startservice.worker_confirm" name="宠物师确认" type="media"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" :data="service.startservice.hand_disinfect" name="手部消毒" type="default"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" :data="service.startservice.body_disinfect" name="全身消毒" type="default"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" :data="service.startservice.key" name="钥匙开启/收取" type="default"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" :data="service.startservice.key" name="钥匙描述" type="default"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" :data="service.startservice.service_tools" name="服务工具" type="text"></FomItem>
</view>
<view class="pet-detail-background"></view>
@ -212,38 +210,36 @@
<view class="pet-detail-gun col">
<image class="img" mode="heightFix" :src="staticImage.petGun"/>
</view>
<view class="pet-detail-content">
<view class="content-item"><view>完成订单</view></view>
<FomItem type="default" :data="service.endservice.appliance" name="水电等情况"></FomItem>
<FomItem type="default" :data="service.endservice.before_status" name="入户前萌宠家居情况"></FomItem>
<FomItem type="default" :data="service.endservice.pet_status" name="萌宠生活区情况"></FomItem>
<FomItem type="default" :data="service.endservice.food_status" name="萌宠粮剩余情况"></FomItem>
<FomItem type="default" :data="service.endservice.sick" name="是否有萌宠呕吐物"></FomItem>
<FomItem type="default" :data="service.endservice.excrement" name="萌宠排泄物情况"></FomItem>
<FomItem type="default" :data="service.endservice.other" name="其他情况反馈"></FomItem>
<FomItem type="default" :data="service.endservice.food_bowl" name="食盆清洗并擦干水渍" option-name="value"></FomItem>
<FomItem type="default" :data="service.endservice.basin" name="水盆清理" option-name="value"></FomItem>
<FomItem type="default" :data="service.endservice.staple_food" name="萌宠主食"></FomItem>
<FomItem type="default" :data="service.endservice.water" name="萌宠饮用水"></FomItem>
<FomItem type="default" :data="service.endservice.snacks" name="零食、药品及其他"></FomItem>
<FomItem type="default" :data="service.endservice.wowo" name="窝窝整理"></FomItem>
<FomItem type="default" :data="service.endservice.cage" name="笼笼清理"></FomItem>
<FomItem type="default" :data="service.endservice.hair" name="周边毛发"></FomItem>
<FomItem type="default" :data="service.endservice.pet_sick" name="屋内排泄物清理"></FomItem>
<FomItem type="default" :data="service.endservice.pet_excrement" name="屋内呕吐物清理"></FomItem>
<FomItem type="default" :data="service.endservice.cat_litter" name="猫砂盆整理及猫砂更换"></FomItem>
<FomItem type="default" :data="service.endservice.other_info" name="其他需求反馈"></FomItem>
<FomItem type="default" :data="service.endservice.foundation" name="基础检查"></FomItem>
<FomItem type="text" :data="service.endservice.health" name="健康情况"></FomItem>
<FomItem type="default" :data="service.endservice.health_other" name="其他"></FomItem>
<FomItem type="default" :data="service.endservice.pet_clean" name="萌宠清洁"></FomItem>
<FomItem type="default" :data="service.endservice.before_facial" name="洗护前原始状态"></FomItem>
<FomItem type="default" :data="service.endservice.pet_facial" name="使用产品"></FomItem>
<FomItem type="default" :data="service.endservice.end_facial" name="洗护后状态"></FomItem>
<FomItem type="default" :data="service.endservice.home_play" name="在家互动"></FomItem>
<FomItem type="default" :data="service.endservice.out_play" name="外出遛弯">
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.appliance" name="水电等情况"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.before_status" name="入户前萌宠家居情况"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.pet_status" name="萌宠生活区情况"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.food_status" name="萌宠粮剩余情况"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.sick" name="是否有萌宠呕吐物"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.excrement" name="萌宠排泄物情况"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.other" name="其他情况反馈"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.food_bowl" name="食盆清洗并擦干水渍" option-name="value"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.basin" name="水盆清理" option-name="value"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.staple_food" name="萌宠主食"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.water" name="萌宠饮用水"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.snacks" name="零食、药品及其他"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.wowo" name="窝窝整理"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.cage" name="笼笼清理"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.hair" name="周边毛发"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.pet_sick" name="屋内排泄物清理"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.pet_excrement" name="屋内呕吐物清理"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.cat_litter" name="猫砂盆整理及猫砂更换"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.other_info" name="其他需求反馈"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.foundation" name="基础检查"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="text" :data="service.endservice.health" name="健康情况"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.health_other" name="其他"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.pet_clean" name="萌宠清洁"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.before_facial" name="洗护前原始状态"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.pet_facial" name="使用产品"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.end_facial" name="洗护后状态"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.home_play" name="在家互动"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.out_play" name="外出遛弯">
<template #option>
<view v-if="service.endservice?.out_play.number_option.length>0">
<view class="">
@ -265,16 +261,16 @@
</view>
</template>
</FomItem>
<FomItem type="default" :data="service.endservice.trash" name="垃圾携带"></FomItem>
<FomItem type="default" :data="service.endservice.pet_secure" name="空调"></FomItem>
<FomItem type="default" :data="service.endservice.pet_secure" name="离开时萌宠安全确认"></FomItem>
<FomItem type="default" :data="service.endservice.close" name="普通锁"></FomItem>
<FomItem type="default" :data="service.endservice.close_mima" name="密码锁"></FomItem>
<FomItem type="default" :data="service.endservice.key" name="房门钥匙"></FomItem>
<FomItem type="text" :data="service.endservice.leave" name="离开时间"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.trash" name="垃圾携带"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.pet_secure" name="空调"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.pet_secure" name="离开时萌宠安全确认"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.close" name="普通锁"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.close_mima" name="密码锁"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="default" :data="service.endservice.key" name="房门钥匙"></FomItem>
<FomItem @showBigImage="showBigImage" @showBigVideo="showBigVideo" type="text" :data="service.endservice.leave" name="离开时间"></FomItem>
</view>
<view class="pet-detail-background"></view>
<!-- <view class="pet-detail-background"></view>-->
</view>
</view>
</view>
@ -283,6 +279,11 @@
<u-image mode="widthFix" :src="imageUrl" height="auto" width="100vw"></u-image>
</view>
</u-overlay>
<u-overlay :show="videoShow" @click="videoShow = false">
<view class="" style="display:flex;align-items: center;justify-content:center;width:100%;height:100vh;">
<video :autoplay="true" mode="widthFix" :src="videoUrl" height="auto" width="100vw"></video>
</view>
</u-overlay>
</template>
<script>
@ -311,6 +312,8 @@
return {
imageShow:false,
imageUrl:'',
videoUrl: '',
videoShow: false,
title: 'Hello',
loading: true,
staticImage: {
@ -381,6 +384,11 @@
this.imageUrl = imgUrl;
this.imageShow = true;
},
showBigVideo(videoUrl) {
this.videoUrl = videoUrl;
this.videoShow = true;
this.$emit('showBigVideo',videoUrl)
},
getString(value) {
let typeStr = typeof value;
if (typeStr === 'string') {

3
pages/OrderPage/index.vue

@ -791,6 +791,7 @@
this.coupons.splice(index,1);
this.checkOrderData();
},
//TODO
getStoreServiceList(){
if(this.timeList.length === 0){
api.error('请选择服务日期');
@ -798,7 +799,7 @@
}
getStoreService({
address_id: this.address.id,
do_date:this.timeList,
do_date:this.timeList.map(res => [res.date,res.time]),
order_type:this.type
}).then(res => {
this.store_id = res.data.store_id;

14
pages/UserOrderPage/index.vue

@ -83,13 +83,13 @@
button-color="#F7E1C3"
button-width="100%"></MzButton>
</view>
<!-- <view class="card-button" @click="navTo('/pages/FeedLog/index?pet_id=' + item.pet_id)">-->
<!-- <MzButton-->
<!-- title="喂养档案"-->
<!-- font-color="#FFFFFF"-->
<!-- button-color="#4DC3B8"-->
<!-- button-width="100%"></MzButton>-->
<!-- </view>-->
<view class="card-button" @click="navTo('/pages/FeedLog/index?pet_id=' + item.pet_id.join(','))">
<MzButton
title="喂养档案"
font-color="#FFFFFF"
button-color="#4DC3B8"
button-width="100%"></MzButton>
</view>
<view class="card-button" @click="navTo('/pages/OrderDetail/index?id='+item.id)">
<MzButton
title="订单详情"

32
uni_modules/uv-upload/components/uv-upload/uv-upload.vue

@ -21,18 +21,26 @@
height: $uv.addUnit(height)
}]"
>
<video
:controls="controls"
:show-center-play-btn="controls"
:show-fullscreen-btn="controls"
:src="item.thumb || item.url" :mode="imageMode"
@tap="onPreviewVideo(item,index)"
class="uv-upload__wrap__preview__image"
:style="[{
width: $uv.addUnit(width),
height: $uv.addUnit(height)
}]"
></video>
<image :src="item.thumb" :mode="imageMode"
@tap="onPreviewVideo(item,index)"
:style="{
width: $uv.addUnit(width),
height: $uv.addUnit(height)
}"
>
</image>
<!-- <video-->
<!-- :controls="controls"-->
<!-- :show-center-play-btn="controls"-->
<!-- :show-fullscreen-btn="controls"-->
<!-- :src="item.thumb || item.url" :mode="imageMode"-->
<!-- @tap="onPreviewVideo(item,index)"-->
<!-- class="uv-upload__wrap__preview__image"-->
<!-- :style="[{-->
<!-- width: $uv.addUnit(width),-->
<!-- height: $uv.addUnit(height)-->
<!-- }]"-->
<!-- ></video>-->
</view>
<view class="uv-upload__status" v-if="item.status === 'uploading' || item.status === 'failed'">
<view class="uv-upload__status__icon">

Loading…
Cancel
Save