添加查询文件流

main
yangyuanshuai 9 months ago
parent 8845815656
commit 04741e7f8c

@ -44,6 +44,7 @@
"element-plus": "^2.4.0",
"file-saver": "^2.0.5",
"lodash-es": "^4.17.21",
"mammoth": "^1.8.0",
"mitt": "^3.0.1",
"mockjs": "^1.1.0",
"nprogress": "^0.2.0",

@ -36,6 +36,11 @@ export const queryRepTemplateApi = (tId?: string): Promise<IResponse> => {
return request.postJson({ url: '/RepTemplate/spi/reporting/RepTemplate/RepTemplateQueryOne', data: { tId } });
};
/** 查询文件流 */
export const queryFileFlowRepTemplateApi = (tId?: string): Promise<IResponse> => {
return request.postJson({ url: '/RepTemplate/spi/reporting/RepTemplate/RepTemplateQueryOneFileFlow', data: { tId } });
};
/** 同步导入 */
export const importExcelApiUrl = '/RepTemplate/sui/reporting/RepTemplate/RepTemplateImportExcel';

@ -1,19 +1,14 @@
<script setup lang="ts">
import VueOfficeDocx from "@vue-office/docx";
import mammoth from 'mammoth';
import "@vue-office/docx/lib/index.css";
import { reactive,ref } from "vue";
import { useRoute } from 'vue-router';
const route = useRoute();
// 线
let docxSrc = ref("");
//
const pageQuery = ref(route || null);
const fileData = pageQuery.value?.query?.fileData;
//
let rendered = ()=>{
console.log("渲染完成");
}
let htmlContent = ref("");
const fetchDocFile = async ()=>{
try {

@ -13,7 +13,7 @@ import { TableData } from '@/api/reporting/RepTemplate/RepTemplate/types'
import { useTable } from '@/hooks/web/useTable'
import { useI18n } from '@/hooks/web/useI18n'
import { Table, TableColumn } from '@/components/Table'
import { ElButton, ElLink, ElLoading, ElPopconfirm, ElMessage, ElTag } from 'element-plus'
import { ElButton, ElLink, ElLoading, ElPopconfirm, ElMessage, ElTag, colProps } from 'element-plus'
import { Search } from '@/components/Search'
import { FormSchema } from '@/components/Form'
import { ContentWrap } from '@/components/ContentWrap'
@ -65,11 +65,12 @@ const tableColumns = reactive<TableColumn[]>([
},
{
field: 'tName',
label: '名称'
label: '名称',
width: 160,
},
{
field: 'tCategory',
label: '报告分类'
label: '报告分类',
},
{
field: 'createUser',
@ -85,11 +86,13 @@ const tableColumns = reactive<TableColumn[]>([
},
{
field: 'createTime',
label: '上传时间'
label: '上传时间',
width: 150,
},
{
field: 'updateTime',
label: '修改时间'
label: '修改时间',
width: 160,
},
{
field: 'tDescription',

@ -7,10 +7,15 @@ import { ElButton, ElMessage, ElMessageBox } from 'element-plus';
import { getCategory } from '@/api/reporting/RepTemplate/RepTemplate';
import { transfDictList } from '@/utils';
import { REPORTING_STATUS_LIST } from '../constants';
import { getLoginNameByUserInfo } from '@/utils/auth';
const session_loginName = getLoginNameByUserInfo();
const { required } = useValidator()
let fileData = null;
let tName = null;
let createTime = null;
let updateTime = null;
const props = defineProps({
currentRow: {
type: Object as PropType<any>,
@ -36,7 +41,7 @@ const formSchema = reactive<FormSchema[]>([
field: 'tCategory',
label: '报告分类',
component: 'Select',
optionApi: async () => {
optionApi: async () => {
const res = await getCategory({ paramName: 'reportingType_param', systemCode: 'ordb' });
return transfDictList(res.body.result);
},
@ -89,7 +94,7 @@ const formSchema = reactive<FormSchema[]>([
},
},
{
field: 'organCode',
field: 'file',
label: '报告模版',
component: 'Upload',
colProps: { span: 24 },
@ -109,22 +114,27 @@ const formSchema = reactive<FormSchema[]>([
onExceed: () => {
ElMessage.warning("上传模板失败,当前已有模板,只能上传一个模板")
},
onSuccess:() => {
ElMessage.success("上传成功")
},
slots: {
default: () =><div class="el-upload"><i class="fa fa-upload cursor-pointer"></i><br/><h1 class="el-upload__text">拖拽报告模版到这里...<br/><em>上传报告模版</em></h1></div>,
default: () =><div class="el-upload"><i class="el-icon-upload"></i><br/><h1 class="el-upload__text">拖拽报告模版到这里...<br/><em>上传报告模版</em></h1></div>,
tip: () => <div class="el-upload__tip">doc,docx文件</div>,
file:(file)=>{
fileData = file.file.raw;
tName=file.file.name;
}
},
style:{
width:"100%",
}
},
}
])
const rules = reactive({
// tStatus:[required()],//
//file:[required()],//
})
@ -135,7 +145,19 @@ const submit = async () => {
})
if (valid) {
const formData = await getFormData()
formData.organCode = fileData;
formData.file = fileData;
formData.tName = tName;
formData.uploadUser=session_loginName;
let time = new Date()
//
if(props.actionType=='add'){
formData.createTime=time.toLocaleString();
}
//
else{
formData.updateTime=time.toLocaleString();
}
return formData
}
}
@ -159,5 +181,4 @@ defineExpose({
<template>
<Form :rules="rules" @register="formRegister" :schema="formSchema" />
</template>
</template>
Loading…
Cancel
Save