Browse Source

新主题,先不要发版

ZaiZai 1 year ago
parent
commit
2db6ec8495
2 changed files with 0 additions and 1930 deletions
  1. 0 298
      src/views/archives/bookmark_11.vue
  2. 0 1632
      src/views/using/query_bak.vue

+ 0 - 298
src/views/archives/bookmark_11.vue

@@ -1,298 +0,0 @@
-<template>
-    <div class="hc-page-layout-box">
-        <div class="hc-layout-left-box" :style="`width:${leftWidth}px;`">
-            <div class="hc-project-box">
-                <div class="hc-project-icon-box">
-                    <HcIcon name="stack" />
-                </div>
-                <div class="ml-2 project-name-box">
-                    <div class="project-alias">{{ projectInfo.name }}</div>
-                </div>
-            </div>
-            <div v-loading="treeLoading" class="hc-tree-box" element-loading-text="加载中...">
-                <el-scrollbar>
-                    <HcTree :project-id="projectId" :contract-id="contractId" :auto-expand-keys="treeAutoExpandKeys" @nodeTap="nodeElTreeClick" @nodeLoading="treeNodeLoading" />
-                </el-scrollbar>
-            </div>
-            <!-- 左右拖动 -->
-            <div class="horizontal-drag-line" @mousedown="onmousedown" />
-        </div>
-        <div class="hc-page-content-box">
-            <HcCard title="当前目录信息编辑">
-                <template #extra>
-                    <HcTooltip keys="archives_bookmark_btn_add">
-                        <el-button type="primary" hc-btn @click="addModalClick(false)">
-                            <span>保存设置</span>
-                        </el-button>
-                    </HcTooltip>
-                </template>
-                <el-form ref="formUserRef" :model="formInline" size="large" label-position="top">
-                    <el-row :gutter="20">
-                        <el-col :span="12">
-                            <el-form-item label="档号前缀">
-                                <el-input v-model="formInline.value.fileNumberPrefix" placeholder="请输入" />
-                            </el-form-item>
-                        </el-col>
-                        <el-col :span="12">
-                            <el-form-item label="保管期限">
-                                <el-select v-model="formInline.value.storageTime" placeholder="请选择" clearable style="width:100%">
-                                    <el-option v-for="item in retentionPeriod" :key="item.value" :label="item.label" :value="item.value" />
-                                </el-select>
-                            </el-form-item>
-                        </el-col>
-                    </el-row>
-
-                    <el-row :gutter="20">
-                        <el-col :span="12">
-                            <el-form-item label="目录名称">
-                                <el-input v-model="formInline.value.title" placeholder="请输入" />
-                            </el-form-item>
-                        </el-col>
-                        <el-col :span="12">
-                            <el-form-item label="立卷人">
-                                <el-input v-model="formInline.value.rollor" placeholder="请输入" />
-                            </el-form-item>
-                        </el-col>
-                    </el-row>
-                    <el-row :gutter="20">
-                        <el-col :span="12">
-                            <el-form-item label="卷盒规格">
-                                <el-select v-model="formInline.value.specification" placeholder="请选择" clearable style="width:100%">
-                                    <el-option v-for="item in coilsize" :key="item.value" :label="item.label" :value="item.value" />
-                                </el-select>
-                            </el-form-item>
-                        </el-col>
-                        <el-col :span="12">
-                            <el-form-item label="审核人">
-                                <el-input v-model="formInline.value.reviewer" placeholder="请输入" />
-                            </el-form-item>
-                        </el-col>
-                    </el-row>
-                    <el-row :gutter="20">
-                        <el-col :span="12">
-                            <el-form-item label="案卷后缀">
-                                <el-input v-model="formInline.value.archiveNameSuffix" placeholder="请输入" />
-                            </el-form-item>
-                        </el-col>
-                    </el-row>
-                </el-form>
-                <template #action>
-                    <el-alert title="提示:设置基础信息,系统可统一内置到组卷信息里面去" type="error" :closable="false" />
-                </template>
-            </HcCard>
-        </div>
-        <!-- 新增子目录文件夹 -->
-        <el-dialog v-model="showaddModal" :title="`${showaddModaltype}子目录文件夹`" width="50rem" class="hc-modal-border" draggable destroy-on-close @closed="cancelClick">
-            <el-form :model="addform" label-width="150px" style="flex-wrap: nowrap;">
-                <el-form-item label="文件目录名称:">
-                    <div class="el-form-item__content">
-                        <el-input v-model="addform.title" />
-                        <!-- <i class="ri-add-circle-line mleft" @click="addinputItem"></i>
-                      <i class="ri-delete-bin-line mleft"  @click="delinputItem(index,item)"></i> -->
-                    </div>
-                </el-form-item>
-                <el-form-item v-for="(item, index) in addArray" :key="index" label="文件目录名称:">
-                    <div v-if="addArray.length > 0" class="el-form-item__content">
-                        <el-input v-model="item.title" /> <i class="ri-add-circle-line mleft" @click="addinputItem" />
-                        <i class="ri-delete-bin-line mleft" @click="delinputItem(index, item)" />
-                    </div>
-                </el-form-item>
-            </el-form>
-            <template #footer>
-                <div class="dialog-footer">
-                    <el-button size="large" @click="cancelClick">
-                        <HcIcon name="close" />
-                        <span>取消</span>
-                    </el-button>
-                    <el-button type="primary" hc-btn @click="confirmClick">
-                        <HcIcon name="check" />
-                        <span>确认</span>
-                    </el-button>
-                </div>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup>
-import { onMounted, reactive, ref, watch } from 'vue'
-import { useAppStore } from '~src/store'
-
-// import HcTree from "./components/hc-tree.vue"
-import HcTree from '~src/components/tree/hc-tree.vue'
-import projectScanningApi from '~api/other-file/projectScanning'
-import { getArchiveTreeLazyTree } from '~api/other'
-import { getStoreValue, setStoreValue } from '~src/utils/storage'
-import { deepClone, downloadBlob, getArrValue } from 'js-fast-way'
-import { HcIsButton } from '~src/plugins/IsButtons'
-
-import { archiveTreeUpdate } from '~api/other'
-
-//变量
-const useAppState = useAppStore()
-const projectId = ref(useAppState.getProjectId)
-const contractId = ref(useAppState.getContractId)
-const projectInfo = ref(useAppState.getProjectInfo)
-const menusData = ref([])
-const isCollapse = ref(useAppState.getCollapse)
-let parentId = ref('')
-const showaddModal = ref(false)
-const showaddModaltype = ref('新增')
-let addform = reactive({ title: '' })
-const addArray = reactive([])
-let checkArray = reactive([])
-import { rowsToId, rowsToIdNumArr } from '~uti/tools'
-
-
-//监听
-watch(() => [
-    useAppState.getCollapse,
-], ([Collapse]) => {
-    isCollapse.value = Collapse
-})
-
-//渲染完成
-onMounted(() => {
-     setElTreeMenu(1)
-})
-
-//树加载
-const treeLoading = ref(true)
-const treeNodeLoading = () => {
-    treeLoading.value = false
-}
-
-let formInline = reactive({
-    value:{
-        title:'',
-    },
-})
-//保管期限
-const retentionPeriod = ref([
-    { label: '永久', value: '1' },
-    { label: '30年', value: '2' },
-    { label: '10年', value: '3' },
-])
-
-const coilsize = ref([
-    { label: '30mm', value: '30' },
-    { label: '40mm', value: '40' },
-    { label: '50mm', value: '50' },
-])
-const onSubmit = () => {
-  console.log('submit!')
-}//新增
-
-const addModalClick = async (type) => {
-    if (!formInline.value.id) {
-        window.$message?.warning('请先点选左侧要修改信息的树节点')
-        return
-    }
-    const { code } = await archiveTreeUpdate(formInline.value)
-    //console.log(res);
-    if (code == 200) {
-        window.$message?.success('修改成功')
-        window?.location?.reload() //刷新页面
-    }
-
-}
-const addinputItem = () => {
-    addArray.push({ title:'' })
-}
-
-const delinputItem = (item, index) => {
-  addArray.splice(index, 1)
-}
-//确认
-
-const confirmClick = () => {
-   showaddModal.value = false
-}
-const cancelClick = () => {
-   showaddModal.value = false
-}
-//删除
-const delModalClick = () => {
-
-}
-//树相关的变量
-const primaryKeyId = ref('')
-//子节点树
-const nodeItemInfo = ref({})
-
-//左右拖动,改变树形结构宽度
-const leftWidth = ref(382)
-const onmousedown = () => {
-    const leftNum = isCollapse.value ? 142 : 272
-    document.onmousemove = (ve) => {
-        let diffVal = ve.clientX - leftNum
-        if (diffVal >= 310 && diffVal <= 900) {
-            leftWidth.value = diffVal
-        }
-    }
-    document.onmouseup = () => {
-        document.onmousemove = null
-        document.onmouseup = null
-    }
-}
-
-
-//自动展开缓存
-
-const treeAutoExpandKeys = ref(getStoreValue('bookExpandKeys') || [])
-//项目树被点击
-const nodeElTreeClick = ({ node, data, keys, key }) => {
-    console.log('点击', data)
-    // treeNodeInfo.value = node
-   formInline.value = data
-
-   setStoreValue('bookExpandKeys', keys)
-    treeAutoExpandKeys.value = keys || []
-}
-//设置树菜单数据
-const ElTreeMenu = ref([])
-const TreeMark = ref(false)
-const setElTreeMenu = (contractType) => {
-    let newArr = []
-    newArr = [
-
-        { icon: 'add-circle', label: '新增', key: 'add' },
-        { icon: 'draft', label: '编辑', key: 'edit' },
-        { icon: 'delete-bin', label: '删除', key: 'del' },
-    ]
-    ElTreeMenu.value = newArr
-
-}
-//树菜单被点击
-const ElTreeMenuClick = async ({ key, node, data }) => {
-    // nodeItemInfo.value = node
-    // nodeDataInfo.value = data
-    setTreeMenuDataClick({ key, node, data })
-    setStoreValue('bookExpandKeys', keys)
-    treeAutoExpandKeys.value = keys || []
-}
-//处理菜单被点击数据
-const setTreeMenuDataClick = ({ key, node, data }) => {
-     if (key === 'add') {
-        addArray.length = 0
-        addform = { title:'' }
-         showaddModal.value = true
-     } else if (key === 'del') {
-
-     } else {
-         addform = data
-           showaddModaltype.value = '编辑'
-            showaddModal.value = true
-     }
-}
-</script>
-
-<style lang="scss" scoped>
-.el-form-item__content{
-    flex-wrap: nowrap;
-}
-.mleft{
-    margin-left: 10px;
-    font-size: 1.25rem;
-}
-</style>

+ 0 - 1632
src/views/using/query_bak.vue

@@ -1,1632 +0,0 @@
-<template>
-    <div id="carry-spot-checks-layout-target" class="hc-page-box hc-using-query-page">
-        <HcCard v-show="!isCarrySpotChecksDrawer" ui="hc-query-card-box">
-            <div v-if="isShowheader" class="flex_box">
-                <div class="hc-arrow-icon">
-                    <HcIcon name="arrow-left-s" />
-                </div>
-                <div class="hc-tag-box">
-                    <el-scrollbar>
-                        <div class="scrollbar-content">
-                            <template v-for="(item, index) in tags" :key="index">
-                                <el-tag class="mx-1" closable effect="light" size="large" @close="deltag(item)">{{ item.name }}</el-tag>
-                            </template>
-                        </div>
-                    </el-scrollbar>
-                </div>
-                <div class="hc-arrow-icon">
-                    <HcIcon name="arrow-right-s" />
-                </div>
-            </div>
-            <div class="hc-query-input-box">
-                <el-input v-model="searchInput" placeholder="可按关键字模糊搜索,多个关键字用“,” 隔开" clearable @clear="clearinput">
-                    <template #prepend>
-                        <div class="prepend-filtering" @click="filteringClick">
-                            <span class="name">条件筛选</span>
-                            <HcIcon v-if="filteringShow === 'show'" name="arrow-up-double" />
-                            <HcIcon v-else name="arrow-down-double" />
-                        </div>
-                    </template>
-                    <template #append>
-                        <div class="append-search-btn-box">
-                            <el-button type="primary" class="search-btn" @click="searchCaseClick('1')">
-                                按案卷查询
-                            </el-button>
-                            <el-button type="primary" class="search-btn" @click="searchFileClick('2')">
-                                按文件查询
-                            </el-button>
-                        </div>
-                    </template>
-                </el-input>
-                <HcMediaMic class="hc-query-mic" :loading="tableLoading" @change="mediaMicChange" />
-            </div>
-
-            <div class="hc-query-filtering-collapse-box">
-                <el-collapse v-model="filteringShow" accordion @change="filteringChange">
-                    <el-collapse-item name="show">
-                        <div class="hc-search-hot-key">
-                            <span>热门搜索词汇:</span>
-                            <span v-for="item in hotInputlist" class=" ml-4" @click="clickHottitle(item)">{{ item.name }}</span>
-                        </div>
-                        <div class="hc-search-screening-item">
-                            <div class="title">
-                                类别:
-                            </div>
-                            <template v-for="item in classess">
-                                <div class="screening-key" :class="isArrIndex(classes, 'key', item.key) ? 'cut' : ''" @click="classesClick(item)">
-                                    {{ item.name }}
-                                </div>
-                            </template>
-                        </div>
-                        <div class="hc-search-screening-item">
-                            <div class="title">
-                                目录:
-                            </div>
-                            <!-- <div class="screening-key text-link" @click="nodeTreeClick">
-                                <HcIcon name="node-tree" :line="false"/>
-                                <span class="ml-1">目录树</span>
-                            </div> -->
-                            <el-button type="primary" @click="nodeTreeClick">
-                                <HcIcon name="node-tree" :line="false" />
-                                <span>目录树</span>
-                            </el-button>
-                        </div>
-                        <div class="hc-search-screening-item">
-                            <div class="title">
-                                年度:
-                            </div>
-                            <template v-for="item in annuals">
-                                <div class="screening-key" :class="isArrIndex(annual, 'key', item.key) ? 'cut' : ''" @click="annualClick(item)">
-                                    {{ item.name }}
-                                </div>
-                            </template>
-                        </div>
-                        <div class="hc-search-screening-item">
-                            <div class="title">
-                                月份:
-                            </div>
-                            <template v-for="item in months">
-                                <div class="screening-key" :class="isArrIndex(month, 'key', item.key) ? 'cut' : ''" @click="monthClick(item)">
-                                    {{ item.name }}
-                                </div>
-                            </template>
-                        </div>
-                        <div class="hc-search-screening-item">
-                            <div class="title">
-                                期限:
-                            </div>
-                            <template v-for="item in deadlines">
-                                <div class="screening-key" :class="isArrIndex(deadline, 'key', item.key) ? 'cut' : ''" @click="deadlineClick(item)">
-                                    {{ item.name }}
-                                </div>
-                            </template>
-                        </div>
-                        <div class="hc-search-screening-item mb-4">
-                            <div class="title">
-                                密级:
-                            </div>
-                            <template v-for="item in securitys">
-                                <div class="screening-key" :class="isArrIndex(security, 'key', item.key) ? 'cut' : ''" @click="securityClick(item)">
-                                    {{ item.name }}
-                                </div>
-                            </template>
-                        </div>
-                    </el-collapse-item>
-                </el-collapse>
-            </div>
-
-            <div class="hc-query-content-header-box">
-                <div class="header">
-                    <HcNewSwitch :datas="tabData" :keys="tabKey" :round="false" @change="tabChange" />
-                </div>
-                <div class="extra">
-                    <el-button v-if="tabKey === 'tab1'" :loading="batchLoading" :disabled="tableKeys.length === 0" @click="batchClick">
-                        <HcIcon name="download" />
-                        <span>下载</span>
-                    </el-button>
-                    <HcNewSwitch v-if="tabKey === 'tab2'" :datas="tabGuiData" :keys="tabGuiKey" @change="tabGuiChange" />
-                </div>
-            </div>
-
-            <div v-if="tabKey === 'tab1'" class="hc-gather-card-box" :class="tableAllShow ? 'file-table' : ''">
-                <HcCardItem ui="hc-card-item-main">
-                    <HcTable ref="tableRef" :column="tableColumn" :datas="tableData" :loading="tableLoading" is-current-row is-check :ui="hoverHand ? 'hover-hand' : ''" @selection-change="tableSelection" @row-click="tableRowClick">
-                        <template #action="{ row, index }">
-                            <el-button type="primary" size="small" @click.stop="consultFileClick(row, 1)">
-                                查阅案卷
-                            </el-button>
-                        </template>
-                    </HcTable>
-                    <template #action>
-                        <HcPages :pages="searchForm" @change="pageChange" />
-                    </template>
-                </HcCardItem>
-                <HcCardItem ui="hc-card-item-file" title="卷内文件">
-                    <template #extra>
-                        <div class="hc-icon-close text-hover" @click="tableFileCloseClick">
-                            <HcIcon name="close" />
-                        </div>
-                    </template>
-                    <HcTable ref="tableFileRef" :column="tableFileColumn" :datas="tableFileData" :loading="tableFileLoading" is-check @selection-change="tableFileSelection">
-                        <template #action="{ row, index }">
-                            <el-button type="primary" size="small" @click.stop="consultFileClick(row, 2)">
-                                查阅文件
-                            </el-button>
-                        </template>
-                        <!-- <template #fileName="{row}">
-                                    <span class="text-link text-hover" @click="viewfilePdf(row)">{{ row?.fileName }}</span>
-                         </template> -->
-                    </HcTable>
-                    <!-- <template #action>
-                        <HcPages :pages="InsearchForm" @change="InpageChange"/>
-                    </template> -->
-                </HcCardItem>
-            </div>
-
-            <!-- 档案柜 -->
-            <div v-if="tabKey === 'tab2'" class="hc-gather-card-box gui" :class="isMac ? 'is-mac' : ''">
-                <HcCardItem v-loading="tableLoading" ui="hc-card-item-main">
-                    <el-carousel v-if="guiItemData.length > 0" class="hc-file-cabinet" :autoplay="false" :loop="false" indicator-position="none">
-                        <el-carousel-item v-for="item in guiItemData">
-                            <div class="hc-file-cabinet-gui" :class="isVideoShow ? 'hidden' : ''">
-                                <div v-for="items in item.children" class="gui-item">
-                                    <el-popover
-                                        effect="dark" placement="top" :title="`${items.name}柜`" :width="200"
-                                        :hide-after="0" :offset="-10" :content="items.content"
-                                    >
-                                        <template #reference>
-                                            <div class="gui-view" @click="guiItemClick(items)">
-                                                <img :src="imageViewGui" alt="">
-                                                <span class="num">{{ items.name }}</span>
-                                            </div>
-                                        </template>
-                                    </el-popover>
-                                </div>
-                            </div>
-                        </el-carousel-item>
-                    </el-carousel>
-                    <HcNoData v-else />
-                    <div class="hc-gui-video" :class="[isVideoShow ? 'animate__zoomIn' : '']">
-                        <video ref="videoRef" muted>
-                            <source src="/gui.mp4" type="video/mp4">
-                        </video>
-                    </div>
-                </HcCardItem>
-            </div>
-        </HcCard>
-
-        <!-- 预加载视频 -->
-        <video class="hc-preloaded-video" muted autoplay>
-            <source src="/gui.mp4" type="video/mp4">
-        </video>
-
-        <!-- 柜子侧面 -->
-        <HcDrawer :show="isGuiInfoDrawer" direction="rtl" to-id="carry-spot-checks-layout-target" uis="hc-carry-spot-checks-target" @close="onCloseGuiInfoDrawer">
-            <template #header>
-                <div class="w-96">
-                    <el-input v-model="searchForm.innerSearch" size="large" placeholder="请输入关键词检索" clearable />
-                </div>
-                <div class="ml-2">
-                    <el-button type="primary" size="large" @click="guiInfoSearch">
-                        <HcIcon name="search-2" />
-                        <span>搜索</span>
-                    </el-button>
-                </div>
-            </template>
-            <div v-loading="guiInfoLoading" class="hc-gui-info-drawer">
-                <div class="hc-gui-info-img">
-                    <div class="gui-info-img">
-                        <img :src="imageViewGui1" alt="">
-                        <div class="gui-file-item-box">
-                            <div v-for="item in guiInfoData" class="gui-file-item">
-                                <template v-for="(items, index) in item.children">
-                                    <!--  query 为搜索后的结果进行选中,cur 为点击的选中 -->
-                                    <div
-                                        class="item"
-                                        :class="[items.isSelect === 1 ? 'query' : '', guiInfoCurKey.id === items.id ? 'cur' : '']"
-                                        @click="guiFileInfo(items)"
-                                    >
-                                        {{ items.sideNumber }}
-                                    </div>
-                                </template>
-                            </div>
-                        </div>
-                    </div>
-                </div>
-                <div class="hc-gui-info-data">
-                    <div class="hc-gui-data-container">
-                        <img :src="imageViewGui2" alt="">
-                        <div class="hc-gui-info-item-box">
-                            <div class="hc-gui-info-item">
-                                <div class="info-item" style="top: 10px">
-                                    <div class="title">
-                                        <span>档</span>
-                                        <span>号:</span>
-                                    </div>
-                                    <div class="text">
-                                        {{ guiInfoCurKey.fileNumber }}
-                                    </div>
-                                </div>
-                                <div class="info-item-name">
-                                    {{ guiInfoCurKey.name }}
-                                </div>
-                                <div class="hc-info-item-bottom">
-                                    <div class="info-item">
-                                        <div class="title">
-                                            立卷单位:
-                                        </div>
-                                        <div class="text">
-                                            {{ guiInfoCurKey.unit }}
-                                        </div>
-                                    </div>
-                                    <div class="info-item">
-                                        <div class="title">
-                                            起止日期:
-                                        </div>
-                                        <div v-if="guiInfoCurKey?.endDate !== null || guiInfoCurKey?.startDate !== null" class="text">
-                                            <div>{{ setTimeString (splitDate (guiInfoCurKey?.startDate)) }}~{{ setTimeString(splitDate(guiInfoCurKey?.endDate)) }}</div>
-                                        </div>
-                                        <div v-else class="text" />
-                                    </div>
-                                    <div class="info-item">
-                                        <div class="title">
-                                            保管期限:
-                                        </div>
-                                        <div class="text">
-                                            {{ guiInfoCurKey.storageTimeValue }}
-                                        </div>
-                                    </div>
-                                    <div class="info-item">
-                                        <div class="title">
-                                            <span>密</span>
-                                            <span>级:</span>
-                                        </div>
-                                        <div class="text">
-                                            {{ guiInfoCurKey.secretLevelValue }}
-                                        </div>
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="btn-box">
-                        <el-button
-                            size="large" type="primary"
-                            :disabled="guiInfoData.length <= 0"
-                            @click="consultFileClick(guiInfoCurKey, 1)"
-                        >
-                            打开案卷
-                        </el-button>
-                        <el-button size="large" @click="onCloseGuiInfoDrawer">
-                            <HcIcon name="close" />
-                            <span>关闭</span>
-                        </el-button>
-                    </div>
-                </div>
-            </div>
-        </HcDrawer>
-
-        <!-- 展开抽查 -->
-        <HcDrawer :show="isCarrySpotChecksDrawer" uis="hc-carry-spot-checks-target" to-id="carry-spot-checks-layout-target" @close="onCarrySpotChecksDrawerClose">
-            <div class="hc-carry-spot-checks-pdf">
-                <!-- <HcPdf src="https://bladex-test-info.oss-cn-chengdu.aliyuncs.com//upload/20221212/ce9799c7d18efc03efefd6f242439f2e.pdf"/> -->
-                <HcPdf v-loading="pdfLoading" :src="pdfUrl" />
-                <el-tooltip content="展开/收起 右侧目录" placement="top" :disabled="!isBubble">
-                    <div class="hc-csc-pdf-btn" @click="onCarryDataShow">
-                        <HcIcon v-show="isCarryDataShow" name="arrow-right-s" />
-                        <HcIcon v-show="!isCarryDataShow" name="arrow-left-s" />
-                    </div>
-                </el-tooltip>
-            </div>
-            <div v-show="isCarryDataShow" class="hc-carry-spot-checks-data">
-                <div class="hc-csc-switch">
-                    <HcNewSwitch :datas="tabTypeTab" :keys="tabTypeKey" size="default" :round="false" @change="tabTypeChange" />
-                </div>
-                <div class="hc-csc-info-box">
-                    <el-scrollbar>
-                        <div class="hc-info-text-item">
-                            <div class="title">
-                                案卷题名:
-                            </div>
-                            <div class="content">
-                                {{ fileInfo.name }}
-                            </div>
-                        </div>
-                        <div class="hc-info-text-item">
-                            <div class="title">
-                                <span>密</span>
-                                <span class="ml-7">级:</span>
-                            </div>
-                            <div class="content">
-                                {{ fileInfo.secretLevelValue }}
-                            </div>
-                        </div>
-                        <div class="hc-info-text-item">
-                            <div class="title">
-                                保管期限:
-                            </div>
-                            <div class="content">
-                                {{ fileInfo.storageTimeValue }}
-                            </div>
-                        </div>
-                        <div class="hc-info-text-item">
-                            <div class="title">
-                                卷内文件:
-                            </div>
-                            <div class="content">
-                                {{ fileInfo.pageNumber }}
-                            </div>
-                        </div>
-                        <div class="hc-info-text-item">
-                            <div class="title">
-                                起止日期:
-                            </div>
-                            <div v-if="fileInfo?.endDate !== '' || fileInfo?.startDate !== ''" class="content">
-                                {{ `${splitDate(fileInfo?.startDate)}~${splitDate(fileInfo?.endDate)}` }}
-                            </div>
-                            <div v-else class="content" />
-                        </div>
-                        <div class="hc-info-text-item">
-                            <div class="title">
-                                立卷单位:
-                            </div>
-                            <div class="content">
-                                {{ fileInfo.unit }}
-                            </div>
-                        </div>
-                    </el-scrollbar>
-                </div>
-                <div class="hc-csc-data-box">
-                    <HcTable v-if="tabTypeKey === 'tab1'" :column="cscTableColumn1" :datas="cscTableData1" :loading="cscTableLoading" :is-arr-index="false">
-                        <template #name="{ row }">
-                            <div :class="row.id === checkId ? 'text-link' : 'text-hover'" @click="changePdf(row)">
-                                {{ row?.fileName }}
-                            </div>
-                        </template>
-                    </HcTable>
-
-                    <HcTable v-if="tabTypeKey === 'tab2'" :column="cscTableColumn2" :datas="cscTableData2" :loading="cscTableLoading" :is-arr-index="false">
-                        <template #name="{ row }">
-                            <div :class="row.id === 2 ? 'text-link' : 'text-hover'">
-                                {{ row?.name }}
-                            </div>
-                        </template>
-                    </HcTable>
-
-                    <HcTable v-if="tabTypeKey === 'tab3'" :column="cscTableColumn3" :datas="cscTableData3" :loading="cscTableLoading" :is-arr-index="false">
-                        <template #name="{ row }">
-                            <div :class="row.id === 2 ? 'text-link' : 'text-hover'">
-                                {{ row?.name }}
-                            </div>
-                        </template>
-                    </HcTable>
-
-                    <HcTable v-if="tabTypeKey === 'tab4'" :column="cscTableColumn4" :datas="cscTableData4" :loading="cscTableLoading" :is-arr-index="false">
-                        <template #name="{ row }">
-                            <div class="hc-csc-associated-row" :class="row.id === 2 ? 'text-link' : 'text-hover'">
-                                <el-tag effect="dark">
-                                    {{ row?.tag }}
-                                </el-tag>
-                                <span class="ml-3">{{ row?.name }}</span>
-                            </div>
-                        </template>
-                    </HcTable>
-
-                    <MetaTable v-if="tabTypeKey === 'tab5'" :loading="cscTableLoading" :ishow-file="isFile === 1 ? false : true" :meta-data-table="cscmetaDataTabledata" />
-
-                    <HcTable v-if="tabTypeKey === 'tab6'" :column="cscTableColumn5" :datas="cscTableData5" :loading="cscTableLoading" />
-
-                    <el-tooltip v-if="tabTypeKey === 'tab6' || tabTypeKey === 'tab5'" content="使用弹窗查看数据" placement="top" :disabled="!isBubble">
-                        <div class="hc-table-info-btn" @click="cscTableDataModalShow">
-                            <HcIcon name="airplay" />
-                        </div>
-                    </el-tooltip>
-                </div>
-                <div class="hc-csc-action-box">
-                    <div class="btn-box">
-                        <el-button hc-btn @click="onCarrySpotChecksDrawerClose">
-                            <HcIcon name="close" />
-                            <span>取消查阅</span>
-                        </el-button>
-                    </div>
-                </div>
-            </div>
-        </HcDrawer>
-
-        <!-- 使用弹窗查看数据 -->
-        <HcDialog :show="cscTableDataModal" :title="cscTableDataTitle" widths="1080px" is-table :footer="false" @close="cscTableDataModalClose">
-            <MetaTable v-if="tabTypeKey === 'tab5'" :loading="cscTableLoading" :ishow-file="isFile === 1 ? false : true" :meta-data-table="cscmetaDataTabledata" />
-            <HcTable v-if="tabTypeKey === 'tab6'" :column="cscTableColumn51" :datas="cscTableData5" :loading="cscTableLoading" />
-        </HcDialog>
-
-        <!-- 目录树 -->
-        <HcDialog :show="nodeTreeModal" widths="1080px" is-table save-text="确认" :is-close="false" @close="nodeTreeModalClose" @save="nodeTreeModalSave">
-            <template #header>
-                <div role="heading" class="el-dialog__title">
-                    <span class="mr-3">选择目录</span>
-                    <span class="text-sm text-orange">点击左侧黄色文件夹可展开下一级</span>
-                </div>
-            </template>
-            <template #extra>
-                <HcNewSwitch :datas="nodeTabData" :keys="nodeTabKey" :round="false" @change="nodeTabChange" />
-            </template>
-            <el-collapse v-model="activeName" v-loading="nodeTreeArrLoad" class="hc-node-tree-collapse" @change="collapseChange">
-                <template v-for="(item, index) in nodeTreeArr">
-                    <el-collapse-item :name="item.id.toString()" :disabled="item.notExsitChild === true">
-                        <template #title>
-                            <div class="hc-collapse-item-title">
-                                <el-checkbox v-model="item.checkColId" style="font-size: 24px;" @change="changeCheckColId(item, index)" @click.stop.native="() => {}" />
-                                <HcIcon v-if="item.notExsitChild === true" name="file" fill class="icon" />
-                                <HcIcon v-else name="folder-3" fill class="icon" />
-                                <span class="title">{{ item.nodeName }}</span>
-                            </div>
-                        </template>
-                        <el-tree
-                            ref="nodetreeEl"
-                            v-loading="nodetreeElloading" class="col_tree" node-key="id" :props="defaultProps" show-checkbox lazy :load="loadNode" :data="item.Nodetreedata"
-                        >
-                            <template #default="{ node, data }">
-                                <span class="custom-tree-node">
-                                    <HcIcon v-if="data.notExsitChild === true" name="file" fill class="icon" style="color: #FFAF2D;" />
-                                    <HcIcon v-else name="folder-3" fill class="icon" style="color: #FFAF2D;" />
-                                    <span>{{ node.label }}</span>
-                                </span>
-                            </template>
-                        </el-tree>
-                    </el-collapse-item>
-                </template>
-            </el-collapse>
-            <HcNoData v-if="nodeTreeArr.length == 0" />
-        </HcDialog>
-    </div>
-</template>
-
-<script setup>
-import { nextTick, onMounted, ref, watch } from 'vue'
-import { useAppStore } from '~src/store'
-import MetaTable from '../transfer/components/meta-table.vue'
-import HcMediaMic from './components/media-mic/index.vue'
-import { arrIndex, arrToId, getArrValue, getObjValue, isArrIndex } from 'js-fast-way'
-import archiveQueryApi from '~api/using/query.js'
-import tuningApi from '~api/archiveConfig/tuning.js'
-import imageViewGui from '~src/assets/view/gui.png'
-import imageViewGui1 from '~src/assets/view/gui1.png'
-import imageViewGui2 from '~src/assets/view/gui2.png'
-import { setTimeString } from '~src/utils/tools'
-
-
-//变量
-const useAppState = useAppStore()
-const projectId = ref(useAppState.getProjectId)
-const contractId = ref(useAppState.getContractId)
-const projectInfo = ref(useAppState.getProjectInfo)
-const contractInfo = ref(useAppState.getContractInfo)
-const isBubble = ref(useAppState.getBubble)
-const userRoleId = ref(useAppState.getRoleId)
-const hoverHand = ref(true)
-const isShowheader = ref(false)
-const tags = ref([])
-
-const userAgent = navigator.userAgent
-const isMac = userAgent.indexOf('Mac') !== -1
-
-//监听
-watch(() => [
-    useAppState.getBubble, tags.value,
-], ([bubble, Tags]) => {
-    isBubble.value = bubble
-    if (Tags.length == 0) {
-        isShowheader.value = false
-    } else {
-        isShowheader.value = true
-    }
-})
-
-//渲染完成
-onMounted(() => {
-    getCarrierTypeByDictdata()
-    setAnnuals()
-    setMonths()
-    getTableData()
-})
-//截取日期
-const splitDate = (val)=>{
-    if (val) {
-        return val?.substring(0, 10)
-    } else {
-        return ''
-    }
-}
-//处理数据
-const rowsToArr = (rows) => {
-    let newArr = []
-    for (let i = 0; i < rows.length; i++) {
-        newArr.push(rows[i]?.key)
-    }
-    return newArr.join(',')
-}
-const deltag = (item)=>{
-    tags.value = tags.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    //设置年份
-    annual.value = annual.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    yeararr.value = yeararr.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    searchForm.value.year = rowsToArr(annual.value)
-    if (annual.value.length == 0) {
-        annual.value = [{ key: 'all', name: '所有' }]
-    }
-
-    //设置月份
-    month.value = month.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    montharr.value = montharr.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-
-    searchForm.value.month = rowsToArr(month.value)
-    if (month.value.length == 0) {
-        month.value = [{ key: 'all', name: '所有' }]
-    }
-    //设置保管期限
-    deadline.value = deadline.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    deadlinearr.value = deadlinearr.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    searchForm.value.storageTime = rowsToArr(deadline.value)
-    if (deadline.value.length == 0) {
-        deadline.value = [{ key: 'all', name: '所有' }]
-    }
-    //设置密级
-    security.value = security.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    securityarr.value = securityarr.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    searchForm.value.secretLevel = rowsToArr(security.value)
-    if (security.value.length == 0) {
-        security.value = [{ key: 'all', name: '所有' }]
-    }
-    //设置类别
-    classes.value = classes.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    classesarr.value = classesarr.value.filter((ele)=>{
-        if (item.name !== ele.name) {
-            return item
-        }
-    })
-    searchForm.value.carrierType = rowsToArr(classes.value)
-    if (classes.value.length == 0) {
-        classes.value = [{ key: 'all', name: '所有' }]
-    }
-
-}
-//搜索表单
-const searchForm = ref({
-    current: 1, size: 20, total: 0, searchType:'1', listType: 1, archiveType: '', cabinetNumber: '', innerSearch: '',
-})
-//卷内文件
-const InsearchForm = ref({
-    current: 1, size: 20, total: 0,
-})
-//热门搜索词汇
-const hotInputlist = ref([
-    { name:'文件名' },
-    { name:'案卷名' },
-    { name:'档号' },
-    { name:'单位' },
-])
-const clickHottitle = (item)=>{
-    searchInput.value = item.name
-    searchForm.value.queryValue = item.name
-
-}
-const clearinput = ()=>{
-    searchForm.value.searchType = '1'
-    getTableData()
-}
-//年度
-const annuals = ref([])
-const setAnnuals = () => {
-    let annualArr = [{ key: 'all', name: '所有' }]
-    const year = new Date().getFullYear()
-    for (let i = 0; i < 8; i++) {
-        const item = year - i + ''
-        annualArr.push({
-            key: item,
-            name: item + '年',
-        })
-    }
-    annuals.value = annualArr
-}
-//数组去重
-const some = (arr)=> {
-    let some = []
-    arr.forEach(el => {
-        if (!some.some(e => e.name == el.name)) {
-            some.push(el)
-        }
-    })
-    return some
-}
-const allarr = ref([])
-const montharr = ref([])
-const yeararr = ref([])
-const deadlinearr = ref([])
-const securityarr = ref([])
-const classesarr = ref([])
-const setTags = (val, type)=>{
-    let arr = []
-    val.forEach((item)=>{
-        if (item.name !== '所有') {
-            arr.push({ name:item.name })
-        }
-    })
-    let filarr = some(arr)
-    if (type === 'month') {
-        montharr.value = some(filarr)
-        if (montharr.value.length == 0) {
-            month.value = [{ key: 'all', name: '所有' }]
-        }
-    } else if (type === 'year') {
-        yeararr.value = some(filarr)
-        if (yeararr.value.length == 0) {
-            annual.value = [{ key: 'all', name: '所有' }]
-        }
-    } else if (type === 'deadline') {
-        deadlinearr.value = some(filarr)
-        if (deadlinearr.value.length == 0) {
-            deadline.value = [{ key: 'all', name: '所有' }]
-        }
-    } else if (type === 'security') {
-        securityarr.value = some(filarr)
-        if (securityarr.value.length == 0) {
-            security.value = [{ key: 'all', name: '所有' }]
-        }
-    } else if (type === 'classes') {
-        classesarr.value = some(filarr)
-        if (classesarr.value.length == 0) {
-            classes.value = [{ key: 'all', name: '所有' }]
-        }
-    }
-    let finalarr = []
-
-    yeararr.value.forEach((item)=>{
-        finalarr.push({ name:item.name })
-    })
-
-    montharr.value.forEach((item)=>{
-        finalarr.push({ name:item.name })
-    })
-    deadlinearr.value.forEach((item)=>{
-        finalarr.push({ name:item.name })
-    })
-    securityarr.value.forEach((item)=>{
-        finalarr.push({ name:item.name })
-    })
-    classesarr.value.forEach((item)=>{
-        finalarr.push({ name:item.name })
-    })
-    tags.value = some(finalarr)
-}
-
-const annual = ref([{ key: 'all', name: '所有' }])
-const annualClick = (item) => {
-    annual.value = setQueryFiltering(annual.value, item)
-    setTags(annual.value, 'year')
-    searchForm.value.year = item.name
-    let arr = []
-    annual.value.forEach((item)=>{
-        arr.push(item.key)
-    })
-    searchForm.value.year = arr + ''
-}
-
-
-//月份
-const months = ref([])
-const setMonths = () => {
-    let monthArr = [{ key: 'all', name: '所有' }]
-    for (let i = 0; i < 12; i++) {
-        let item = (i + 1) + ''
-        item.length === 1 && (item = item)
-        monthArr.push({
-            key: item,
-            name: item + '月',
-        })
-    }
-    months.value = monthArr
-}
-const month = ref([{ key: 'all', name: '所有' }])
-const monthClick = (item) => {
-    month.value = setQueryFiltering(month.value, item)
-    setTags(month.value, 'month')
-    let arr = []
-    month.value.forEach((item)=>{
-        arr.push(item.key)
-    })
-    searchForm.value.month = arr + ''
-}
-
-//期限
-const deadline = ref([{ key: 'all', name: '所有' }])
-const deadlines = ref([
-    { key: 'all', name: '所有' },
-    { key: '3', name: '永久' },
-    { key: '2', name: '30年' },
-    { key: '1', name: '10年' },
-])
-const deadlineClick = (item) => {
-    deadline.value = setQueryFiltering(deadline.value, item)
-    setTags(deadline.value, 'deadline')
-    let arr = []
-    deadline.value.forEach((item)=>{
-        arr.push(item.key)
-    })
-    searchForm.value.storageTime = arr + ''
-}
-
-
-//密级
-const security = ref([{ key: 'all', name: '所有' }])
-const securitys = ref([
-    { key: 'all', name: '所有' },
-    { key: '1', name: '机密' },
-    { key: '2', name: '绝密' },
-    { key: '3', name: '秘密' },
-    { key: '4', name: '公开' },
-])
-const securityClick = (item) => {
-    security.value = setQueryFiltering(security.value, item)
-    setTags(security.value, 'security')
-    let arr = []
-    security.value.forEach((item)=>{
-        arr.push(item.key)
-    })
-    searchForm.value.secretLevel = arr + ''
-}
-
-
-//类别
-const classes = ref([ { key: 'all', name: '所有' }])
-const classess = ref([ { key: 'all', name: '所有' }])
-const getCarrierTypeByDictdata = async ()=>{
-    const { error, code, data } = await archiveQueryApi.getCarrierTypeByDict()
-    tableLoading.value = false
-    if (!error && code === 200) {
-        let arrdata = getArrValue(data)
-        arrdata.forEach((ele)=>{
-            classess.value.push({ key:ele.dictKey, name:ele.dictValue })
-        })
-    }
-}
-
-const classesClick = (item) => {
-    classes.value = setQueryFiltering(classes.value, item)
-    setTags(classes.value, 'classes')
-    let arr = []
-    classes.value.forEach((item)=>{
-        arr.push(item.key)
-    })
-    searchForm.value.carrierType = arr + ''
-}
-
-
-//设置筛选条件
-const setQueryFiltering = (arr, { key, name }) => {
-    if (key === 'all') {
-        //如果选择所有,就删除其他
-        arr = [{ key, name }]
-        tags.value = tags.value.filter((item)=>{
-            if (item.name.indexOf === -1) {
-                return item
-            }
-        })
-    } else {
-        //选中还是取消
-        const index = arrIndex(arr, 'key', key)
-        if (index !== -1) {
-            arr.splice(index, 1)
-        } else {
-            arr.push({ key, name })
-        }
-        //如果存在所有,就删除所有。
-        if (arr.length > 1) {
-            const isAll = arrIndex(arr, 'key', 'all')
-            if (isAll !== -1) {
-                arr.splice(isAll, 1)
-            }
-        }
-    }
-    return arr
-}
-
-
-
-//目录树
-const nodeTreeClick = () => {
-    nodeTreeModal.value = true
-    getnodeTabData()
-}
-const nodeTreeModal = ref(false)
-const nodeTreeModalClose = () => {
-    nodeTreeModal.value = false
-    activeName.value = []
-}
-
-//确认
-const nodeTreeModalSave = () => {
-    const allCheckIds = arrToId(nodeTreeArr.value.filter((item)=>item.checkColId)).split(',')
-    let halfKeys = []
-    nodeTreeArr.value.forEach((ele, index)=>{
-        if (ele.checkColId === false) {
-            let keys = nodetreeEl.value[index].getCheckedKeys()
-            keys.forEach((ele)=>{
-                halfKeys.push(ele)
-            })
-        }
-    })
-    const ids = [...allCheckIds, ...halfKeys]
-
-    searchForm.value.nodeIds = ids.join(',')
-    nodeTreeModal.value = false
-    activeName.value = []
-
-}
-
-
-//搜索筛选
-const filteringShow = ref('')
-const filteringChange = (name) => {
-    filteringShow.value = name
-}
-//条件筛选
-const filteringClick = () => {
-    if (filteringShow.value) {
-        filteringShow.value = ''
-    } else {
-        filteringShow.value = 'show'
-    }
-}
-const searchInput = ref('')
-//按文件查询
-const searchFileClick = (type) => {
-    filteringShow.value = ''
-    searchForm.value.searchType = type
-    getTableData()
-}
-
-//按案卷查询
-const searchCaseClick = (type) => {
-    filteringShow.value = ''
-    searchForm.value.searchType = type
-    getTableData()
-}
-
-
-//tab数据和相关处理
-const tabKey = ref('tab1')
-const tabData = ref([
-    { key:'tab1', name: '案卷列表' },
-    { key:'tab2', name: '档案柜' },
-])
-const tabChange = ({ key }) => {
-    tabKey.value = key
-    searchForm.value.current = 1
-    const { contractType } = contractInfo.value
-    if (key === 'tab1') {
-        searchForm.value.listType = 1
-        searchForm.value.archiveType = ''
-    }
-    //档案柜
-    if (key === 'tab2') {
-        searchForm.value.listType = 2
-        //1 施工,2监理,3业主
-        if (Number(contractType) === 1) {
-            tabGuiKey.value = '2'
-        } else if (Number(contractType) === 2) {
-            tabGuiKey.value = '3'
-        } else if (Number(contractType) === 3) {
-            tabGuiKey.value = '1'
-        }
-        searchForm.value.archiveType = tabGuiKey.value
-    }
-    getTableData()
-}
-
-//分页被点击
-const pageChange = ({ current, size }) => {
-    searchForm.value.current = current
-    searchForm.value.size = size
-    getTableData()
-}
-//分页被点击
-const InpageChange = ({ current, size }) => {
-    InsearchForm.value.current = current
-    InsearchForm.value.size = size
-    // getTableData()
-}
-//表头
-const tableRef = ref(null)
-const tableColumn = ref([
-    { key:'fileNumber', name: '档号', width: 100 },
-    { key:'name', name: '题名' },
-    { key:'secretLevelValue', name: '密级', width: 120, align: 'center' },
-    { key:'storageTimeValue', name: '保管期限', width: 120, align: 'center' },
-    { key:'pageN', name: '页数', width: 120, align: 'center' },
-    { key:'unit', name: '立卷单位', width: 140 },
-    { key:'action', name: '操作', width: 100, align: 'center', fixed: 'right' },
-])
-const tableData = ref([
-
-])
-const pdfUrl = ref('')
-const pdfLoading = ref(false)
-const tableLoading = ref(false)
-const getTableData = async () => {
-    guiItemData.value = []
-    tableLoading.value = true
-    searchForm.value.queryValue = searchInput.value
-    for (let key in searchForm.value) {
-        if (searchForm.value[key] === 'all' || searchForm.value[key] === '所有') {
-            searchForm.value[key] = ''
-        }
-    }
-    const { error, code, data } = await archiveQueryApi.getarchiveQueryPage({
-        ...searchForm.value,
-        projectId: projectId.value,
-        contractId:contractId.value,
-    })
-    tableLoading.value = false
-    if (!error && code === 200) {
-        if (tabKey.value === 'tab1') {
-            tableData.value = getArrValue(data['records'])
-            searchForm.value.total = data['total'] || 0
-        } else {
-            guiItemData.value = getArrValue(data)
-        }
-    } else {
-        if (tabKey.value === 'tab1') {
-            tableData.value = []
-            searchForm.value.total = 0
-        } else {
-            guiItemData.value = []
-        }
-    }
-    //案卷列表
-    if (tabKey.value === 'tab1') {
-        tableFileCloseClick()
-        if (searchForm.value.searchType === '2') {
-            if (tableData.value.length > 0 && tableData.value[0]?.approvalFileList.length > 0) {
-                // tableFileData.value =getArrValue( tableData.value[0]['approvalFileList'])
-                let searchinput = searchForm.value.queryValue
-                // let allarr=getArrValue( tableData.value[0]['approvalFileList'])
-                fileInfo.value.id = tableData.value[0]['id']
-                getArchiveFileListData().then()
-                let filterarr = allarr.value.filter((item)=>{
-                    if (item.fileName.indexOf(searchinput) !== -1) {
-                        return item
-                    }
-                })
-                tableFileData.value = getArrValue( filterarr)
-                tableAllShow.value = true
-                tableFileShow.value = true
-            }
-        }
-    }
-}
-//多选
-const tableKeys = ref([])
-const tableSelection = (rows) => {
-    tableKeys.value = rows
-}
-
-
-const tableAllShow = ref(false)
-const tableAllShowClick = () => {
-    tableFileShow.value = false
-    tableAllShow.value = !tableAllShow.value
-}
-
-//表头
-const tableFileRef = ref(null)
-const tableFileColumn = ref([
-    { key:'fileNumber', name: '文件编号', width: 180 },
-    { key:'fileName', name: '文件题名' },
-    { key:'fileTime', name: '文件日期', width: 120 },
-    { key:'dutyUser', name: '责任者', width: 120 },
-    { key:'filePage', name: '页数', width: 120 },
-    { key:'action', name: '操作', width: 120 },
-])
-const tableFileData = ref([
-
-])
-//获取卷内文件数据
-const getArchiveFileListData = async ()=>{
-    const { error, code, msg, data } = await archiveQueryApi.getArchiveFileList({
-        id: fileInfo.value.id, //案卷id
-
-    })
-    //处理返回数据
-    if (!error && code === 200) {
-        fileInfo.value.pageNumber = data.pageNumber
-        tableFileData.value = getArrValue(data['approvalFileList'])
-        cscTableData1.value = getArrValue(data['approvalFileList'])
-
-    } else {
-        tableFileData.value = []
-        cscTableData1.value = []
-    }
-}
-const tableFileLoading = ref(false)
-const tableFileSelection = (rows) => {
-    console.log(rows)
-}
-
-//表格行被点击
-const tableFileShow = ref(false)
-const tableRowClick = ({ row }) => {
-    tableAllShow.value = true
-    tableFileShow.value = true
-    // tableFileData.value =getArrValue( row['approvalFileList'])
-    // cscTableData1.value=getArrValue( row['approvalFileList'])
-    // InsearchForm.value.total=row['approvalFileList'].length
-    fileInfo.value = row
-    getArchiveFileListData()
-
-
-}
-const tableFileCloseClick = () => {
-    tableAllShow.value = false
-    tableFileShow.value = false
-}
-const viewPdf = async (id) => {
-    window.$message?.info('预览案卷需要合并pdf,需要一点时间')
-    pdfLoading.value = true
-    const { error, code, data, msg } = await tuningApi.printArchive({
-        id: id,
-    })
-    pdfLoading.value = false
-    if (!error && code === 200) {
-        if (data) {
-            return data
-        } else {
-            window.$message?.warning('文件不存在')
-        }
-
-    }
-}
-const isFile = ref('')//查阅案卷或者查阅文件
-const checkId = ref('')
-const consultFileClick = async (row, type) => {
-    isCarrySpotChecksDrawer.value = true
-    isFile.value = type
-    if (type === 1) {
-        //查阅案卷
-        getArchivesAutoView( row.id)
-        fileInfo.value = row
-        getArchiveFileListData()
-        const url = await viewPdf(row.id)
-        pdfUrl.value = url
-        checkId.value = ''
-
-
-    } else if (type == 2) {//查阅卷内文件
-        checkId.value = row.id
-        pdfUrl.value = row.pdfFileUrl
-        getmetaInfo(checkId.value)
-    }
-
-
-}
-const isCarrySpotChecksDrawer = ref(false)
-const fileInfo = ref({
-    name:'',
-    storageTimeValue:'',
-    secretLevelValue:'',
-    filePage:'',
-    unit:'',
-    time:'',
-    pageN:0,
-})//案卷信息
-
-const changePdf = (row)=>{
-    console.log(row, 'row')
-    if (pdfLoading.value === true) {
-        pdfLoading.value = false
-    }
-    pdfUrl.value = row['pdfFileUrl'] || ''
-    checkId.value = row.id
-    isFile.value = 2
-    getmetaInfo(checkId.value)
-
-}
-
-//类型tab数据和相关处理
-const tabTypeKey = ref('tab1')
-const tabTypeTab = ref([
-    { key:'tab1', name: '卷内文件' },
-    { key:'tab2', name: '竣工资料' },
-    { key:'tab3', name: '计量资料' },
-    { key:'tab4', name: '关联资料' },
-    { key:'tab5', name: '元数据' },
-    { key:'tab6', name: '验签包' },
-])
-const tabTypeChange = ({ key }) => {
-    tabTypeKey.value = key
-}
-
-const cscTableLoading = ref(false)
-
-//卷内目录
-const cscTableColumn1 = [
-    { key:'name', name: '卷内文件题名', align: 'center' },
-]
-const cscTableData1 = ref([
-
-])
-
-//竣工资料
-const cscTableColumn2 = [
-    { key:'name', name: '竣工图资料', align: 'center' },
-]
-const cscTableData2 = ref([
-
-])
-
-//计量资料
-const cscTableColumn3 = [
-    { key:'name', name: '计量资料', align: 'center' },
-]
-const cscTableData3 = ref([
-    // {id: 1, name: 'ZB2-17.pdf'},
-    // {id: 2, name: 'ZB2-18.pdf'},
-    // {id: 3, name: 'ZB2-19.pdf'},
-    // {id: 4, name: 'ZB2-20.pdf'},
-    // {id: 5, name: 'ZB2-21.pdf'},
-    // {id: 6, name: 'ZB2-22.pdf'},
-    // {id: 7, name: 'ZB2-23.pdf'}
-])
-
-//计量资料
-const cscTableColumn4 = [
-    { key:'name', name: '关联文件', align: 'center' },
-]
-const cscTableData4 = ref([
-    // {id: 1, name: 'xxxxxxxxxxxxxxxxxxx.pdf', tag: '开工'},
-    // {id: 2, name: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf', tag: '工序'},
-    // {id: 3, name: 'xxxxxxxxxxxxxxxxxxxxxxxxxx.pdf', tag: '评定'},
-    // {id: 4, name: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf', tag: '交工'},
-    // {id: 5, name: '', tag: '抽检'},
-    // {id: 6, name: '', tag: '隐蔽'}
-])
-
-//验签包
-const cscTableColumn5 = [
-    { key:'user', name: '签名者' },
-    { key:'time', name: '签名时间' },
-    { key:'val', name: '摘要' },
-]
-const cscTableColumn51 = [
-    { key:'user', name: '签名者', width: 300 },
-    { key:'time', name: '签名时间', width: 200 },
-    { key:'val', name: '摘要' },
-]
-const cscTableData5 = ref([
-])
-
-//抽检意见
-const reform = ref({
-    type: false, content: '',
-})
-
-//显示右侧目录
-const isCarryDataShow = ref(true)
-const onCarryDataShow = () => {
-    isCarryDataShow.value = !isCarryDataShow.value
-}
-
-//使用弹窗查看数据
-const cscTableDataModal = ref(false)
-const cscTableDataTitle = ref('')
-//显示弹窗
-const cscTableDataModalShow = () => {
-    const key = tabTypeKey.value
-    if (key === 'tab5') {
-        cscTableDataTitle.value = '元数据'
-        if (isFile.value == 1) {
-            getArchivesAutoView( fileInfo.value.id)
-        } else {
-            getmetaInfo(checkId.value)
-        }
-
-    } else if (key === 'tab6') {
-        cscTableDataTitle.value = '验签包'
-    }
-    cscTableDataModal.value = true
-
-}
-
-//关闭弹窗
-const cscTableDataModalClose = () => {
-    cscTableDataModal.value = false
-}
-
-//关闭抽查
-const onCarrySpotChecksDrawerClose = () => {
-    isCarrySpotChecksDrawer.value = false
-    pdfUrl.value = ''
-}
-
-//tab数据和相关处理
-const nodeTabKey = ref('1')
-const nodeTabData = ref([
-    { key:'1', name: '业主档案' },
-    { key:'2', name: '施工档案' },
-    { key:'3', name: '监理档案' },
-    { key:'4', name: '文书档案' },
-])
-const nodeTabChange = (item) => {
-    nodeTabKey.value = item?.key
-    getnodeTabData()
-    activeName.value = []
-}
-//获取目录树getArchiveTreeByNodeType
-const checkColId = ref(false)
-const checkNodeid = ref('')
-const singleId = ref('')
-
-
-
-
-
-// }
-const changeCheckColId = async (item)=>{
-
-    const ids = arrToId(Nodetreedata.value).split(',')
-
-    //  if (item.checkColId) {
-    //     nextTick(()=>{
-    //         nodetreeEl?.value[treeIndex.value].setCheckedKeys(ids, true)
-    //     })
-    //  } else {
-    //     nodetreeEl?.value[treeIndex.value].setCheckedKeys([], false)
-    //  }
-
-}
-const nodeTreeArrLoad = ref(false)
-const getnodeTabData = async ()=>{
-    nodeTreeArrLoad.value = true
-    const { error, code, data } = await archiveQueryApi.getArchiveTreeByNodeType({
-        nodeType:nodeTabKey.value,
-        projectId: projectId.value,
-        contractId:contractId.value,
-
-    })
-
-    if (!error && code === 200) {
-        console.log(data, 'mulushu')
-        nodeTreeArr.value = getArrValue(data)
-        nodeTreeArr.value.forEach((item)=>{
-            item.checkColId = false
-        })
-        nodeTreeArrLoad.value = false
-
-    } else {
-        nodeTreeArr.value = []
-        nodeTreeArrLoad.value = false
-
-    }
-}
-const defaultProps = {
-    children: 'children',
-    label: 'nodeName',
-    isLeaf: 'notExsitChild',
-}
-const Nodetreedata = ref([])
-const nodetreeEl = ref(null)
-const activeName = ref('')
-const nodeTreeArr = ref([])
-
-const treeIndex = ref(0)
-const collapseChange = async (key) => {
-    checkNodeid.value = key[key.length - 1]
-    await getNodetreedata()
-
-
-}
-const nodetreeElloading = ref(false)
-const getNodetreedata = async ()=>{
-    nodetreeElloading.value = true
-    const { error, code, data } = await archiveQueryApi.getChildrenNodeByNodeId({
-        nodeId:checkNodeid.value,
-    })
-    nodetreeElloading.value = false
-    if (!error && code === 200) {
-        Nodetreedata.value = getArrValue(data)
-
-    } else {
-        Nodetreedata.value = []
-    }
-    nodeTreeArr.value.forEach((ele)=>{
-        if (ele.id === checkNodeid.value) {
-            ele.Nodetreedata = Nodetreedata.value
-        }
-    })
-}
-const checkNodeids = ref([])
-
-
-const loadNode = (tree, resolve)=>{
-    archiveQueryApi.getChildrenNodeByNodeId({ nodeId:tree.data.id }).then((response) => {
-        let resdata = getArrValue(response.data)
-        resolve(resdata)
-    })
-}
-
-
-//档案柜的tab数据和相关处理
-const tabGuiKey = ref('1')
-const tabGuiData = ref([
-    { key:'1', name: '业主档案' },
-    { key:'2', name: '施工档案' },
-    { key:'3', name: '监理档案' },
-])
-const tabGuiChange = async ({ key }) => {
-    const { error, code, msg } = await archiveQueryApi.getArchivesAuthByUser({
-        archiveType: key, //1业主2施工3监理
-        projectId: projectId.value,
-        contractId:contractId.value,
-    }, false)
-    //处理返回数据
-    if (!error && code === 200) {
-        tabGuiKey.value = key
-        searchForm.value.current = 1
-        searchForm.value.archiveType = tabGuiKey.value
-        getTableData().then()
-    } else {
-        window.$message.error(msg)
-    }
-}
-
-
-//测试档案柜的数据
-const guiItemData = ref([])
-const searchGuiId = ref('')
-
-//柜子被点击
-const guiInfoLoading = ref(false)
-const isGuiInfoDrawer = ref(false)
-const guiItemClick = (item) => {
-    //同步转异步
-    playVideo().then(res => {
-        isGuiInfoDrawer.value = res
-    })
-    //处理参数
-    guiInfoLoading.value = true
-    searchGuiId.value = item.id
-    searchForm.value.queryValue = searchInput.value
-    for (let key in searchForm.value) {
-        if (searchForm.value[key] === 'all' || searchForm.value[key] === '所有') {
-            searchForm.value[key] = ''
-        }
-    }
-    //发起请求, 同步转异步
-    archiveQueryApi.getarchiveQueryPage({
-        ...searchForm.value,
-        cabinetNumber: item.id,
-        projectId: projectId.value,
-        contractId:contractId.value,
-    }).then(({ error, code, data }) => {
-        //处理返回数据
-        if (!error && code === 200) {
-            const arrData = getArrValue(data)
-            guiInfoData.value = arrData
-            if (arrData.length > 0) {
-                const children = getArrValue(arrData[0]?.children)
-                guiInfoCurKey.value = children[0]
-            } else {
-                guiInfoCurKey.value = {}
-            }
-            guiInfoLoading.value = false
-        } else {
-            guiInfoLoading.value = false
-            guiInfoCurKey.value = {}
-            guiInfoData.value = []
-        }
-    })
-}
-
-
-//播放视频
-const videoRef = ref(null)
-const isVideoShow = ref(false)
-const playVideo = () => {
-    return new Promise((resolve) => {
-        //播放视频
-        isVideoShow.value = true
-        videoRef.value?.play()
-        //播放结束
-        videoRef.value?.addEventListener('ended', () => {
-            setTimeout(() => {
-                isVideoShow.value = false
-            }, 2000)
-            resolve(true)
-        })
-    })
-}
-
-
-//柜子内部搜索
-const guiInfoSearch = async () => {
-    guiInfoLoading.value = true
-    //处理参数
-    searchForm.value.queryValue = searchInput.value
-    for (let key in searchForm.value) {
-        if (searchForm.value[key] === 'all' || searchForm.value[key] === '所有') {
-            searchForm.value[key] = ''
-        }
-    }
-    //发起请求
-    const { error, code, data } = await archiveQueryApi.getarchiveQueryPage({
-        ...searchForm.value,
-        cabinetNumber: searchGuiId.value,
-        projectId: projectId.value,
-        contractId:contractId.value,
-    })
-    //处理返回数据
-    if (!error && code === 200) {
-        const arrData = getArrValue(data)
-        guiInfoData.value = arrData
-        if (arrData.length > 0) {
-            const children = getArrValue(arrData[0]?.children)
-            guiInfoCurKey.value = children[0]
-        } else {
-            guiInfoCurKey.value = {}
-        }
-        guiInfoLoading.value = false
-    } else {
-        guiInfoLoading.value = false
-        guiInfoCurKey.value = {}
-        guiInfoData.value = []
-    }
-}
-
-//关闭抽屉
-const onCloseGuiInfoDrawer = () => {
-    isGuiInfoDrawer.value = false
-    searchForm.value.innerSearch = ''
-}
-
-//案卷文件数据
-const guiInfoCurKey = ref({})
-const guiInfoData = ref([])
-
-//点击档案
-const guiFileInfo = (item) => {
-    guiInfoCurKey.value = item
-}
-
-//获取元数据
-const cscmetaTableLoading = ref(false)
-const cscmetaDataTabledata = ref([])
-//获取文件元数据信息
-const getmetaInfo = async (fileId)=>{
-    console.log(fileId, 'fileId')
-    cscmetaTableLoading.value = true
-    const { error, code, data } = await tuningApi.getMetadataFileByid({
-        fileId,
-    })
-    cscmetaTableLoading.value = false
-    if (!error && code === 200) {
-        cscmetaDataTabledata.value = getArrValue(data)
-    } else {
-        cscmetaDataTabledata.value = []
-    }
-}
-//获取案卷元数据信息
-const getArchivesAutoView = async (fileId)=>{
-    cscmetaTableLoading.value = true
-    const { error, code, data } = await tuningApi.getArchivesAutoView({
-        id:fileId,
-    })
-    cscmetaTableLoading.value = false
-    if (!error && code === 200) {
-        let obj = getObjValue(data)
-        cscmetaDataTabledata.value = [
-            { containerName:'题名', keyValue:'', isType:3 },
-            { containerName:'档号', keyValue:obj?.fileNumber, isType:2 },
-            { containerName:'文件件数', keyValue:obj?.fileN, isType:2 },
-            { containerName:'移交时间', keyValue:'', isType:2 },
-        ]
-    } else {
-        cscmetaDataTabledata.value = []
-    }
-}
-//语音搜索
-const mediaMicChange = (data) => {
-    searchInput.value = data.queryValue
-    searchForm.value.searchType = 1
-    searchForm.value.current = 1
-    Object.keys(data).forEach(key => {
-        searchForm.value[key] = data[key]
-    })
-    getTableData()
-}
-//批量下载档案
-const batchLoading = ref(false)
-const batchClick = async ()=>{
-    const ids = arrToId(tableKeys.value)
-    console.log(ids, 'ids')
-    batchLoading.value = true
-    const { error, code, data, msg } = await archiveQueryApi.batchDownloadFileToZip(
-        { ids: ids },
-    )
-    batchLoading.value = false
-    if (!error && code === 200) {
-        window.$message.success(msg)
-    }
-
-}
-</script>
-
-<style lang="scss">
-@import '~style/using/query.scss';
-.col_tree{
-    font-size: 16px;
-}
-.hc-tag-box {
-    position: relative;
-    width: calc(100% - 40px);
-    overflow: hidden;
-}
-.scrollbar-content {
-    white-space: nowrap;
-    padding: 10px;
-}
-.flex_box{
-    display: flex;
-    justify-content: center;
-    align-items: center;
-}
-
-@import '~src/styles/theme/using/query.scss';
-
-.hc-preloaded-video {
-    position: absolute;
-    bottom: 10px;
-    z-index: -222;
-    width: 200px;
-    left: 10px;
-    opacity: 0;
-}
-</style>