This commit is contained in:
曹辉 2023-04-27 11:26:44 +08:00
parent 540fc66405
commit c539c2a3e4

View File

@ -1,19 +1,13 @@
<template> <template>
<div> <div>
<div <div class="user-info-head" :class="video.VideoPath ? 'wihi' : ''" @click="editCropper()">
class="user-info-head"
:class="video.VideoPath ? 'wihi' : ''"
@click="editCropper()"
>
<video <video
style="width: 208px; height: 208px" style="width: 208px; height: 208px"
v-if="video.VideoPath" v-if="video.VideoPath"
v-bind:src="video.VideoPath" v-bind:src="video.VideoPath"
class="avatar video-avatar" class="avatar video-avatar"
controls="controls" controls="controls"
> >您的浏览器不支持视频播放</video>
您的浏览器不支持视频播放
</video>
<img <img
v-if="options.img" v-if="options.img"
v-bind:src="options.img" v-bind:src="options.img"
@ -62,14 +56,8 @@
v-bind:src="videoForm.showVideoPath" v-bind:src="videoForm.showVideoPath"
class="avatar video-avatar" class="avatar video-avatar"
controls="controls" controls="controls"
> >您的浏览器不支持视频播放</video>
您的浏览器不支持视频播放 <img style="width: 100%; height: 100%" v-if="previews.url" :src="previews.url" />
</video>
<img
style="width: 100%; height: 100%"
v-if="previews.url"
:src="previews.url"
/>
<div v-else></div> <div v-else></div>
</div> </div>
<div <div
@ -79,9 +67,7 @@
types != 'posterPictureUrl' && types != 'posterPictureUrl' &&
types != 'itemDirectoryUrl' types != 'itemDirectoryUrl'
" "
> >请上传图片为800x800px的正方形</div>
请上传图片为800x800px的正方形
</div>
</el-col> </el-col>
</el-row> </el-row>
<br /> <br />
@ -128,9 +114,7 @@
></el-button> ></el-button>
</el-col>--> </el-col>-->
<el-col :lg="{ span: 2, offset: 20 }" :md="2"> <el-col :lg="{ span: 2, offset: 20 }" :md="2">
<el-button type="primary" size="small" @click="uploadImg()" <el-button type="primary" size="small" @click="uploadImg()"> </el-button>
> </el-button
>
</el-col> </el-col>
</el-row> </el-row>
</el-dialog> </el-dialog>
@ -146,12 +130,11 @@ import {
uploadVideoUrl, uploadVideoUrl,
uploadTrainingCategoryPicture, uploadTrainingCategoryPicture,
updatePoserHeads, updatePoserHeads,
uploadUrl, uploadUrl
} from "@/api/system/stationAvatar.js"; } from "@/api/system/stationAvatar.js";
export default { export default {
components: { VueCropper }, components: { VueCropper },
props: ["img", "type", "item", "tovideo"], props: ["img", "type", "item", "tovideo"],
data() { data() {
return { return {
@ -168,17 +151,17 @@ export default {
autoCrop: true, // autoCrop: true, //
autoCropWidth: 300, // autoCropWidth: 300, //
autoCropHeight: 300, // autoCropHeight: 300, //
fixedBox: true, // fixedBox: true //
}, },
previews: {}, previews: {},
items: {}, items: {},
// //
videoForm: { videoForm: {
showVideoPath: null, // showVideoPath: null //
}, },
video: { video: {
VideoPath: null, // VideoPath: null //
}, }
}; };
}, },
created() { created() {
@ -206,12 +189,12 @@ export default {
}, },
watch: { watch: {
tovideo: { tovideo: {
handler(newimg, oldimg) {}, handler(newimg, oldimg) {}
}, },
item: { item: {
handler(newimg, oldimg) { handler(newimg, oldimg) {
this.items = this.item; this.items = this.item;
}, }
}, },
img: { img: {
handler(newimg, oldimg) { handler(newimg, oldimg) {
@ -222,13 +205,13 @@ export default {
} else { } else {
this.options.img = baseurl + this.img; this.options.img = baseurl + this.img;
} }
}, }
}, },
type: { type: {
handler(newimg, oldimg) { handler(newimg, oldimg) {
this.types = this.type; this.types = this.type;
}, }
}, }
}, },
methods: { methods: {
// //
@ -288,12 +271,13 @@ export default {
formData.append("file", this.previews.data); formData.append("file", this.previews.data);
formData.append("type", this.types); formData.append("type", this.types);
if (this.types == "itemDirectoryUrl") { if (this.types == "itemDirectoryUrl") {
uploadVideoUrl(formData).then((response) => { this.$modal.msgSuccess("上传视频中,请耐心等待");
uploadVideoUrl(formData).then(response => {
this.video.VideoPath = baseurl + response.imgUrl; this.video.VideoPath = baseurl + response.imgUrl;
this.$emit("imgUrl", response.imgUrl); this.$emit("imgUrl", response.imgUrl);
this.items.itemDirectoryUrl = response.imgUrl; this.items.itemDirectoryUrl = response.imgUrl;
this.$emit("item", JSON.stringify(this.items)); this.$emit("item", JSON.stringify(this.items));
console.log(this.video,this.options) console.log(this.video, this.options);
this.openimg = false; this.openimg = false;
}); });
} else if ( } else if (
@ -301,25 +285,25 @@ export default {
this.types == "trainingItemContentUrl" || this.types == "trainingItemContentUrl" ||
this.types == "trainingItemPosterUrl" this.types == "trainingItemPosterUrl"
) { ) {
uploadUrl(formData).then((response) => { uploadUrl(formData).then(response => {
this.options.img = baseurl + response.imgUrl; this.options.img = baseurl + response.imgUrl;
this.$emit("imgUrl", response.imgUrl); this.$emit("imgUrl", response.imgUrl);
this.openimg = false; this.openimg = false;
}); });
} else if (this.types == "trainingCategoryPictureUrl") { } else if (this.types == "trainingCategoryPictureUrl") {
uploadTrainingCategoryPicture(formData).then((response) => { uploadTrainingCategoryPicture(formData).then(response => {
this.options.img = baseurl + response.imgUrl; this.options.img = baseurl + response.imgUrl;
this.$emit("imgUrl", response.imgUrl); this.$emit("imgUrl", response.imgUrl);
this.openimg = false; this.openimg = false;
}); });
} else if (this.types == "posterVideoUrl") { } else if (this.types == "posterVideoUrl") {
updatePoserHeads(formData).then((response) => { updatePoserHeads(formData).then(response => {
this.video.VideoPath = baseurl + response.imgUrl; this.video.VideoPath = baseurl + response.imgUrl;
this.$emit("imgUrl", response.imgUrl); this.$emit("imgUrl", response.imgUrl);
this.openimg = false; this.openimg = false;
}); });
} else { } else {
updateNurseStationHeads(formData).then((response) => { updateNurseStationHeads(formData).then(response => {
this.options.img = baseurl + response.imgUrl; this.options.img = baseurl + response.imgUrl;
this.$emit("imgUrl", response.imgUrl); this.$emit("imgUrl", response.imgUrl);
if (this.types == "attributePitureUrl") { if (this.types == "attributePitureUrl") {
@ -361,8 +345,8 @@ export default {
closeDialog() { closeDialog() {
this.imgs = ""; this.imgs = "";
this.visible = false; this.visible = false;
}, }
}, }
}; };
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">