USER-20230908AJ\Administrator il y a 1 an
Parent
commit
74c08428b4

+ 30 - 22
components/en-utils/en-image-video/en-image-video.vue

@@ -2,17 +2,24 @@
 	<view>
 		<view class="row image-box">
 			<view class="image-item m-r20 m-t20" mode="aspectFill" v-for="(item,index) in imgList">
-				<image class="image r-10 " :src="item.url" :style="[{width},{height}]" @click="onPreviewImage(item)">
+				<image class="image r-10 " :src="item.type === 1?item.url:getVideoImg(item.url)" :style="[{width},{height}]" @click="onPreviewImage(item)">
 				</image>
-				<image class="wh-45 video-icon" src="/static/img/task/play.png" mode="aspectFill" v-if="item.type == 2">
+				<image class="wh-45 video-icon" src="/static/img/task/play.png" mode="aspectFill" v-if="item.type === 2">
 				</image>
 			</view>
 		</view>
+    <uni-popup ref="videoPopup" @change="closeVideoImg">
+      <view class="video-box" v-if="videoUrl">
+        <video class="myVideo" :src="videoUrl" :autoplay="true"></video>
+      </view>
+    </uni-popup>
 	</view>
 </template>
 
 <script>
-	export default {
+	import tools from "@/service/tools";
+
+  export default {
 		props: {
 			is_both: {
 				type: Boolean,
@@ -26,7 +33,7 @@
 				type: String,
 				default: '130rpx'
 			},
-			img: {
+      imgList: {
 				default: []
 			},
 			previewImage: {
@@ -35,27 +42,28 @@
 		},
 		data() {
 			return {
-				imgList: [{
-					url: '/static/img/index/top-nav.png',
-					type: 1
-				}, {
-					url: '/static/img/index/top-nav.png',
-					type: 2
-				}, {
-					url: '/static/img/index/top-nav.png',
-					type: 1
-				}, {
-					url: '/static/img/index/top-nav.png',
-					type: 2
-				}, {
-					url: '/static/img/index/top-nav.png',
-					type: 2
-				}, ]
-			}
+        videoUrl:''
+      }
 		},
 		mounted() {},
 		methods: {
-
+      onPreviewImage(item) {
+        this.$emit('onShowImg',item.url)
+      },
+      closeVideoImg(e) {
+        if (!e.show) {
+          console.log('关闭视频了')
+          this.videoUrl = ''
+        }
+      },
+      showVideoImg(url) {
+        console.log(url)
+        this.videoUrl = url
+        this.$refs.videoPopup.open('center')
+      },
+      getVideoImg(url) {
+        return tools.getOssVideo(url)
+      },
 		}
 	}
 </script>

+ 1 - 4
components/en-utils/en-image/en-image.vue

@@ -51,10 +51,7 @@
 				}
 			},
 			onPreviewImage(index) {
-				uni.previewImage({
-					urls: this.previewImage ? this.previewImage : this.imgList,
-					current: index
-				});
+        this.$emit('onShowImg',this.imgList[index])
 			}
 		}
 	}

+ 5 - 2
page_task/task_details/module/identity.vue

@@ -14,7 +14,7 @@
 					</view>
 				</view>
 				<view class="row-c m-t20" v-if="verifyKey('identity_one')">
-					<EnImage :list="[business.identity_one,business.identity_two]"></EnImage>
+					<EnImage @onShowImg="onPreviewImage" :list="[business.identity_one,business.identity_two]"></EnImage>
 				</view>
 				<view class="row-c m-b20" v-if="verifyKey('id_number')">
 					<image class="wh-30 m-r20" src="/page_task/static/img/task-details/number.png" mode="aspectFill">
@@ -84,7 +84,7 @@
 							<text class="size-24">配偶信息</text>
 						</view>
 						<view class="row-c m-t20" v-if="verifyKey('m_identity_one')">
-							<EnImage :list="[business.m_identity_one,business.m_identity_two]"></EnImage>
+							<EnImage @onShowImg="onPreviewImage" :list="[business.m_identity_one,business.m_identity_two]"></EnImage>
 						</view>
 						<view class="">
 							<text class="size-26 sys-weight-600"
@@ -174,6 +174,9 @@
 			return {}
 		},
 		methods: {
+      onPreviewImage(url){
+        this.$emit('onShowImg',url)
+      },
 			verifyKey(key, type) {
 				if (type !== 2) {
 					return this.clientKey.indexOf(key) >= 0

+ 10 - 7
page_task/task_details/module/property.vue

@@ -48,7 +48,7 @@
 									<!--									<image class="picture m-r20 r-10" :src="property.data.certificate_img"-->
 									<!--										mode="aspectFill">-->
 									<!--									</image>-->
-									<en-image :img="property.data.certificate_img"></en-image>
+									<en-image @onShowImg="onPreviewImage" :img="property.data.certificate_img"></en-image>
 								</view>
 							</view>
 							<view class="sys-from-background-color m-t20 p-20 r-20"
@@ -57,7 +57,7 @@
 								<view class="row-c">
 									<!--									<image class="picture m-r20 r-10" :src="property.data.property" mode="aspectFill">-->
 									<!--									</image>-->
-									<en-image :img="property.data.property"></en-image>
+									<en-image @onShowImg="onPreviewImage" :img="property.data.property"></en-image>
 								</view>
 							</view>
 						</view>
@@ -94,7 +94,7 @@
 							<view class="sys-from-background-color m-t20 p-20 r-20" v-if="verifyKey('insurance_img')">
 								<view class="m-b20">保单照片</view>
 								<view class="row-c">
-									<en-image :img="property.data.insurance_img"></en-image>
+									<en-image @onShowImg="onPreviewImage" :img="property.data.insurance_img"></en-image>
 								</view>
 							</view>
 						</view>
@@ -136,18 +136,18 @@
 								<view class="row-c" v-if="verifyKey('register_img')">
 									<view class="">
 										<text class="size-24">行驶证</text>
-										<en-image :img="property.data.register_img"></en-image>
+										<en-image @onShowImg="onPreviewImage" :img="property.data.register_img"></en-image>
 									</view>
 									<view class="m-l20" v-if="verifyKey('driving_img')">
 										<text class="size-24">车辆登记证</text>
-										<en-image :img="property.data.driving_img"></en-image>
+										<en-image  @onShowImg="onPreviewImage":img="property.data.driving_img"></en-image>
 									</view>
 								</view>
 								<view class="row-c" v-if="verifyKey('car_img')">
 									<view class="">
 										<view class="size-24 m-t20">车辆照片</view>
 										<view class="row-c m-t10" style="flex-wrap: wrap;">
-											<en-image :img="property.data.car_img"></en-image>
+											<en-image @onShowImg="onPreviewImage" :img="property.data.car_img"></en-image>
 										</view>
 									</view>
 								</view>
@@ -203,7 +203,7 @@
 							<view class="sys-from-background-color m-t20 p-20 r-20" v-if="verifyKey('firm_img')">
 								<view class="size-24">企业照片</view>
 								<view class="row-c m-t10" style="flex-wrap: wrap;">
-									<en-image :img="property.data.firm_img"></en-image>
+									<en-image @onShowImg="onPreviewImage" :img="property.data.firm_img"></en-image>
 								</view>
 							</view>
 						</view>
@@ -236,6 +236,9 @@
 			return {}
 		},
 		methods: {
+      onPreviewImage(url){
+        this.$emit('onShowImg',url)
+      },
 			verifyKey(key) {
 				return this.propertyKey.indexOf(key) >= 0
 			}

+ 6 - 4
page_task/task_details/module/record.vue

@@ -19,8 +19,8 @@
 				<view class="m-l16 size-26 flex">
 					<!-- 自己发送 -->
 					<text> {{ msg.msg }}</text>
-					<view class="image-box">
-						<EnImageVideo></EnImageVideo>
+					<view class="image-box" v-if="msg.msg_img.length>0">
+						<EnImageVideo @onShowImg="onPreviewImage" :img-list="msg.msg_img"></EnImageVideo>
 					</view>
 					<!-- 文件类型 -->
 					<view class="sys-from-background-color p-20 r-20 m-t20" v-if="msg.file_list.length>0">
@@ -44,8 +44,7 @@
 							<view class="">
 								<view class="m-t16">{{ replyItem.msg }}</view>
 								<view class="image-box" v-if="replyItem.msg_img.length>0">
-									<image class="reply-img wh-60 m-t20 r-10 m-r20" :src="r_img.url" mode="aspectFill"
-										v-for="(r_img,index) in replyItem.msg_img" :key="index"></image>
+                  <EnImageVideo @onShowImg="onPreviewImage" :img-list="replyItem.msg_img"></EnImageVideo>
 								</view>
 							</view>
 						</view>
@@ -113,6 +112,9 @@
 			}
 		},
 		methods: {
+      onPreviewImage(url){
+        this.$emit('onShowImg',url)
+      },
 			startData() {
 				this.getMsgList()
 			},

+ 5 - 2
page_task/task_details/module/third_party.vue

@@ -20,7 +20,7 @@
 							</view>
 						</view>
 						<view class="row-c m-t20" v-if="verifyKey('identity_one')">
-							<EnImage :list="[item.identity_one,item.identity_two]"></EnImage>
+							<EnImage @onShowImg="onPreviewImage" :list="[item.identity_one,item.identity_two]"></EnImage>
 						</view>
 					</view>
 					<!-- 担保类型 -->
@@ -37,7 +37,7 @@
 							<text class="text-color-666">营业执照编号</text>
 							<text class="m-l16">{{item.id_number}}</text>
 						</view>
-						<EnImage v-if="verifyKey('identity_one')" :list="[item.identity_one]"></EnImage>
+						<EnImage @onShowImg="onPreviewImage" v-if="verifyKey('identity_one')" :list="[item.identity_one]"></EnImage>
 					</view>
 				</view>
 				<view class="m-t20 color-4A2600">
@@ -80,6 +80,9 @@
 			return {}
 		},
 		methods: {
+      onPreviewImage(url){
+        this.$emit('onShowImg',url)
+      },
 			verifyKey(key) {
 				return this.tripartiteKey.indexOf(key) >= 0
 			}

+ 18 - 7
page_task/task_details/task_details.vue

@@ -47,28 +47,28 @@
 			<view class="m-t20">
 				<z-swiper ref="zSwiper" v-model="list" :options="options" v-if="current === 1">
 					<z-swiper-item>
-						<Identity :business="business" :linkman="linkman" :client-key="clientKey"
+						<Identity :business="business" :linkman="linkman" :client-key="clientKey" @onShowImg="onShowImg"
 							:linkman-key="linkmanKey"></Identity>
 					</z-swiper-item>
 					<z-swiper-item v-show="product.product_types.indexOf('3')>=0">
-						<Apply :apply-for="applyFor" :applies-key="appliesKey"></Apply>
+						<Apply :apply-for="applyFor" :applies-key="appliesKey" @onShowImg="onShowImg"></Apply>
 					</z-swiper-item>
 					<z-swiper-item v-show="product.product_types.indexOf('4')>=0">
-						<ThirdParty :tripartite="tripartite" :tripartite-key="tripartiteKey"></ThirdParty>
+						<ThirdParty :tripartite="tripartite" :tripartite-key="tripartiteKey" @onShowImg="onShowImg"></ThirdParty>
 					</z-swiper-item>
 				</z-swiper>
 				<view class="" v-if="current === 2">
 					<z-swiper v-model="lists" :options="options">
 						<z-swiper-item>
-							<Property :property-list="propertyList" :property-key="propertyKey"></Property>
+							<Property :property-list="propertyList" :property-key="propertyKey" @onShowImg="onShowImg"></Property>
 						</z-swiper-item>
 						<z-swiper-item>
-							<Property :property-list="propertyList" :property-key="propertyKey"></Property>
+							<Property :property-list="propertyList" :property-key="propertyKey" @onShowImg="onShowImg"></Property>
 						</z-swiper-item>
 					</z-swiper>
 				</view>
 			</view>
-			<Record v-show="current === 3" ref="recordObj" :business-id="businessId"></Record>
+			<Record v-show="current === 3" ref="recordObj" :business-id="businessId" @onShowImg="onShowImg"></Record>
 			<Steps ref="stepsObj" v-show="current === 4" :business-id="businessId"></Steps>
 		</view>
 		<view v-if="isExecute>0 && business.status<4">
@@ -142,7 +142,8 @@
 					autoHeight: true,
 					slidesPerView: 1.1,
 					centeredSlides: true,
-					spaceBetween: 10
+					spaceBetween: 10,
+          effect: 'cards'
 				},
 				list: [1, 2, 3],
 				lists: [1, 2],
@@ -211,6 +212,16 @@
 			}
 		},
 		methods: {
+      onShowImg(item) {
+        if (this.businessFile.imgList.length < 0) {
+          this.businessFile.imgList.push(item)
+        }
+        // 预览图片
+        uni.previewImage({
+          current: item,
+          urls: this.businessFile.imgList,
+        });
+      },
 			auditTask(auditType) {
 				uni.navigateTo({
 					url: '/page_task/task_operate/task_operate?businessId=' + this.business.id +

+ 1 - 1
pages/index/module/index_column.vue

@@ -39,7 +39,7 @@
 				</view>
 				<view class="row-justify-sb center m-t20 line-40">
 					<view class=" row-justify-l">
-						<en-number :end-num="99" :text-color="'color-02154E'" :text-weight="'sys-weight-600'"
+						<en-number :end-num="memberData.out_money" :text-color="'color-02154E'" :text-weight="'sys-weight-600'"
 							:text-size="'size-30'"></en-number>
 						<view class="row-justify-sb center line-40 sys-weight-600 color-02154E">万</view>
 					</view>