12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- <template>
- <uni-file-picker ref="handlerImgRef" v-model="baseFormData.handlerImgList" limit="3" @success="handlerImgSuccess" @fail="handlerImgFail" @select="handlerImgSelect" @delete="handlerImgDelete" title="(支持JPG/PNG格式图片,单张大小10M以内)"></uni-file-picker>
- </template>
- <script setup>
- import { defineEmits, ref, reactive, defineProps } from 'vue'
- import { onLoad } from '@dcloudio/uni-app'
- import { useLoginUserStore } from '@/stores/loginUser'
- import { useUploadFile } from '@/share/useUploadFile.js'
- const emit = defineEmits(['cancelEmit', 'knowEmit']);
- const { inspectionExecuteId } = defineProps({
- inspectionExecuteId: {
- type: Number,
- }
- });
- const loginUserStore = useLoginUserStore();
- const { uploadFile } = useUploadFile();
-
- const baseFormData = reactive({
- handlerImgList: [],
- })
-
-
- const handlerImgRef = ref(null)
-
-
-
- function handlerOrderImg(imgObj){
- return uploadFile(imgObj, 'incident', inspectionExecuteId.value)
- }
-
-
- function handlerImgSuccess(e){
- baseFormData.handlerImgList.forEach(v => {
- v.url = v.path;
- })
-
- let requestList = [];
-
-
- baseFormData.handlerImgList.forEach(v => {
- let handlerOrderImg$ = handlerOrderImg(v);
- requestList.push(handlerOrderImg$);
- })
-
- Promise.all(requestList).then(resList => {
- uni.hideLoading();
- console.log(resList);
- uni.showToast({
- icon: 'none',
- title: '建单成功',
- mask: true,
- });
- setTimeout(() => {
- uni.reLaunch({
- url: '/pages/incidentList/incidentList',
- })
- }, 1500)
- })
- }
-
-
- function handlerImgFail(e){
- baseFormData.handlerImgList.forEach(v => {
- v.url = v.path;
- })
- }
-
-
- function handlerImgSelect(e){
- baseFormData.handlerImgList = baseFormData.handlerImgList.concat(e.tempFiles);
- }
-
-
- function handlerImgDelete(e){
- baseFormData.handlerImgList = baseFormData.handlerImgList.filter(v => e.tempFile.uuid != v.uuid);
- }
-
- onLoad((option) => {
- console.log(inspectionExecuteId)
- })
- </script>
- <style lang="scss" scoped>
- </style>
|