| 
					
				 | 
			
			
				@@ -1,137 +0,0 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    <div class="tempUpload"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <a-modal v-model:visible="visibleUpload" centered :width="600" title="报表或模板上传" @ok="handleUploadOk" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            @cancel="handleUploadCancel"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <a-form :model="uploadForm" :label-col="{ style: { width: '130px' } }" :wrapper-col="{ span: 16 }"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <a-form-item label="文件名称:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <a-input v-model:value="uploadForm.fileName" placeholder="请输入文件名称..." /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </a-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <a-form-item label="业务种类:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <JDictSelectTag v-model:value="uploadForm.busKind" placeholder="请选择业务种类..." dictCode="reportBusKind" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        @change="changeKind" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </a-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <a-form-item label="报表类型:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <JDictSelectTag v-if="kindType == 'ventSReport'" v-model:value="uploadForm.reportType" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        placeholder="请选择报表类型..." dictCode="ventSReport" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <JDictSelectTag v-if="kindType == 'fireSReport'" v-model:value="uploadForm.reportType" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        placeholder="请选择报表类型..." dictCode="fireSReport" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <JDictSelectTag v-if="kindType == 'dustSReport'" v-model:value="uploadForm.reportType" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        placeholder="请选择报表类型..." dictCode="dustSReport" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <JDictSelectTag v-if="kindType == 'gasSReport'" v-model:value="uploadForm.reportType" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        placeholder="请选择报表类型..." dictCode="gasSReport" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </a-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <a-form-item label="模式类型:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <a-radio-group v-model:value="uploadForm.modelType" name="radioGroup"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        <a-radio v-for="item in radioList" :value="item.value">{{ item.label }}</a-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    </a-radio-group> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </a-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <a-form-item label="文件上传"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <a-upload :before-upload="beforeUpload" @remove="handleRemove" :multiple="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        :file-list="fileList"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        <a-button type="primary" preIcon="ant-design:cloud-upload-outlined">选择文件</a-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    </a-upload> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </a-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </a-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </a-modal> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-<script setup lang="ts"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { ref, reactive, watch } from 'vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { getUpload } from '../../gasReportInspect.api' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { useMessage } from '/@/hooks/web/useMessage'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let props = defineProps({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    visibleUp: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        type: Number, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        default: 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let visibleUpload = ref(false) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let uploadForm = reactive({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    fileName: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    busKind: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    modelType: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    reportType: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//模式类型数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let radioList = ref<any[]>([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    { label: '自动生成', value: 0 }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    { label: '手动填写', value: 1 }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    { label: '模板', value: 2 }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let kindType = ref('ventSReport') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let fileList = reactive<any[]>([]); //上传文件列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const { createMessage } = useMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let emit = defineEmits(['resetUpload']) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//确认上传 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-async function handleUploadOk() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    const formData = new FormData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    formData.append('file', fileList[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    formData.append('fileName', uploadForm.fileName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    formData.append('busKind', uploadForm.busKind); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    formData.append('modelType', uploadForm.modelType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    formData.append('reportType', uploadForm.reportType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    let res = await getUpload(formData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    if (res) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        visibleUpload.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        emit('resetUpload') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//取消上传 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function handleUploadCancel() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    visibleUpload.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    uploadForm.modelType = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    uploadForm.fileName = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    uploadForm.reportType = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    uploadForm.busKind = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//业务种类下拉选项切换 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function changeKind(val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    kindType.value = `${val}Report` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//上传文件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let beforeUpload = (file) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    fileList.length = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    let index = file.name.indexOf('.'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    let name = file.name.substring(index + 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    if (name == 'png' || name == 'jpg' || name == 'gif' || name == 'psd' || name == 'webp') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        createMessage.warning('禁止上传图片类型的文件!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        fileList.push(file); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 文件移除 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let handleRemove = (file) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    const index = fileList.indexOf(file); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    const newFileList = fileList.slice(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    newFileList.splice(index, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    fileList.length = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-watch(() => props.visibleUp, (newV, oldV) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    fileList.length = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    visibleUpload.value = !visibleUpload.value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-<style lang="less" scoped> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-.tempUpload { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-.zxm-form { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    padding-top: 20px !important; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    box-sizing: border-box 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-:deep(.zxm-upload-list-item-name) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    color: #fff !important; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-</style> 
			 |