|
@@ -94,75 +94,95 @@
|
|
|
<div class="manyUse">
|
|
|
<div class="useMenu">
|
|
|
<div v-if="thisFolder.dirType == '1'"
|
|
|
- style="display: flex;width: 92px;height: 32px;justify-content: flex-start;align-items: center;line-height: 18px;">
|
|
|
- <div style="margin-left: 5px;">
|
|
|
- <img src="../../assets/images/upload.png" style="width: 24px;height: 24px;" alt="">
|
|
|
- </div>
|
|
|
- <div style="margin-left: 5px;">
|
|
|
- <span style="color: black;cursor: pointer;" @click="uploadModal = true">上传
|
|
|
- </span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div v-else
|
|
|
- style="display: flex;width: 92px;opacity:0.5;height: 32px;justify-content: flex-start;align-items: center;line-height: 18px;">
|
|
|
- <div style="margin-left: 5px;">
|
|
|
- <img src="../../assets/images/upload.png" style="width: 24px;height: 24px;" alt="">
|
|
|
- </div>
|
|
|
- <div style="margin-left: 5px;">
|
|
|
- <span style="color: black;cursor: pointer;">上传
|
|
|
- </span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div v-if="thisFolder.dirType" class="shouzhi"
|
|
|
- style="display: flex;width: 102px;height: 32px;justify-content: flex-start;align-items: center;">
|
|
|
- <div style="margin-left: 5px;">
|
|
|
- <el-icon
|
|
|
- style="background-color: #7084B4;width: 24px;height: 24px;border-radius: 50%;color: white;"
|
|
|
- @click="createNewMenu(0)">
|
|
|
- <Plus />
|
|
|
- </el-icon>
|
|
|
+ style="display: flex;width: 92px;height: 32px;justify-content: flex-start;align-items: center;line-height: 18px;">
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <img src="../../assets/images/upload.png" style="width: 24px;height: 24px;" alt="">
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <span style="color: black;cursor: pointer;" @click="uploadModal = true">上传
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div style="margin-left: 5px;" @click="createNewMenu(0)">
|
|
|
- <span style="font-size: 14px;" class="shouzhi">新建目录</span>
|
|
|
+ <div v-else
|
|
|
+ style="display: flex;width: 92px;opacity:0.5;height: 32px;justify-content: flex-start;align-items: center;line-height: 18px;">
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <img src="../../assets/images/upload.png" style="width: 24px;height: 24px;" alt="">
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <span style="color: black;cursor: pointer;">上传
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <div v-else class="shouzhi"
|
|
|
- style="display: flex;opacity:0.5;width: 102px;height: 32px;justify-content: flex-start;align-items: center;">
|
|
|
- <div style="margin-left: 5px;">
|
|
|
- <el-icon
|
|
|
- style="background-color: #7084B4;width: 24px;height: 24px;border-radius: 50%;color: white;">
|
|
|
- <Plus />
|
|
|
- </el-icon>
|
|
|
+ <div v-if="thisFolder.dirType" class="shouzhi"
|
|
|
+ style="display: flex;width: 102px;height: 32px;justify-content: flex-start;align-items: center;">
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <el-icon
|
|
|
+ style="background-color: #7084B4;width: 24px;height: 24px;border-radius: 50%;color: white;"
|
|
|
+ @click="createNewMenu(0)">
|
|
|
+ <Plus />
|
|
|
+ </el-icon>
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 5px;" @click="createNewMenu(0)">
|
|
|
+ <span style="font-size: 14px;" class="shouzhi">新建目录</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div style="margin-left: 5px;">
|
|
|
- <span style="font-size: 14px;" class="shouzhi">新建目录</span>
|
|
|
+ <div v-else class="shouzhi"
|
|
|
+ style="display: flex;opacity:0.5;width: 102px;height: 32px;justify-content: flex-start;align-items: center;">
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <el-icon
|
|
|
+ style="background-color: #7084B4;width: 24px;height: 24px;border-radius: 50%;color: white;">
|
|
|
+ <Plus />
|
|
|
+ </el-icon>
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <span style="font-size: 14px;" class="shouzhi">新建目录</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <div style="display: flex;width: 102px;height: 32px;justify-content: flex-start;align-items: center;"
|
|
|
- :class="!thisFolder.dirType ? 'yincang' : 'xianshi'">
|
|
|
- <div style="margin-left: 5px;">
|
|
|
- <el-icon
|
|
|
- style="background-color: #7084B4;width: 24px;height: 24px;border-radius: 50%;color: white;"
|
|
|
- @click="thisFolder.dirType ? createNewMenu(2) : null">
|
|
|
- <Plus />
|
|
|
- </el-icon>
|
|
|
+ <div style="display: flex;width: 102px;height: 32px;justify-content: flex-start;align-items: center;"
|
|
|
+ :class="!thisFolder.dirType ? 'yincang' : 'xianshi'">
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <el-icon
|
|
|
+ style="background-color: #7084B4;width: 24px;height: 24px;border-radius: 50%;color: white;"
|
|
|
+ @click="thisFolder.dirType ? createNewMenu(2) : null">
|
|
|
+ <Plus />
|
|
|
+ </el-icon>
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 5px;" @click="thisFolder.dirType ? createNewMenu(2) : null">
|
|
|
+ <span style="font-size: 14px;" class="shouzhi">新建文档</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div style="margin-left: 5px;" @click="thisFolder.dirType ? createNewMenu(2) : null">
|
|
|
- <span style="font-size: 14px;" class="shouzhi">新建文档</span>
|
|
|
+ <template v-for="(item, index) in useMenu" :key="index">
|
|
|
+ <div :class="{ 'isCheck': haveCheck }"
|
|
|
+ style="display: flex;width: 82px;opacity:0.5;height: 32px;justify-content: flex-start;align-items: center;line-height: 18px;cursor: pointer;"
|
|
|
+ @click="getMenu(item, index,haveCheck)">
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <img :src="item.img" style="width: 24px;height: 24px;" alt="">
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <span style="font-size: 14px;" class="shouzhi">{{ item.name }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <div v-if="thisFolder.dirType == '1'"
|
|
|
+ style="display: flex;width: 92px;height: 32px;justify-content: flex-start;align-items: center;line-height: 18px;">
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <img src="../../assets/images/scanFile.png" style="width: 24px;height: 24px;" alt="">
|
|
|
+ </div>
|
|
|
+ <div style="margin-left: 5px;">
|
|
|
+ <span style="color: black;cursor: pointer;" @click="scannerFile">扫描
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <template v-for="(item, index) in useMenu" :key="index">
|
|
|
- <div :class="{ 'isCheck': haveCheck }"
|
|
|
- style="display: flex;width: 82px;opacity:0.5;height: 32px;justify-content: flex-start;align-items: center;line-height: 18px;cursor: pointer;"
|
|
|
- @click="getMenu(item, index,haveCheck)">
|
|
|
+ <div v-else
|
|
|
+ style="display: flex;width: 92px;opacity:0.5;height: 32px;justify-content: flex-start;align-items: center;line-height: 18px;">
|
|
|
<div style="margin-left: 5px;">
|
|
|
- <img :src="item.img" style="width: 24px;height: 24px;" alt="">
|
|
|
+ <img src="../../assets/images/scanFile.png" style="width: 24px;height: 24px;" alt="">
|
|
|
</div>
|
|
|
<div style="margin-left: 5px;">
|
|
|
- <span style="font-size: 14px;" class="shouzhi">{{ item.name }}</span>
|
|
|
+ <span style="color: black;cursor: pointer;">扫描
|
|
|
+ </span>
|
|
|
</div>
|
|
|
</div>
|
|
|
- </template>
|
|
|
</div>
|
|
|
<div class="tip">
|
|
|
<img src="@/assets/images/mouseRight.png" alt="">
|
|
@@ -438,7 +458,23 @@
|
|
|
<!-- 新增文档 -->
|
|
|
<AddFile v-if="newAdd" :newAdd="newAdd" @threeBe="threeBe" :clickFileData="clickFileData"></AddFile>
|
|
|
<!-- 扫描文档 -->
|
|
|
- <ScanFile v-if="openScan" :openScan="openScan" @closeOpen="closeOpen"></ScanFile>
|
|
|
+ <ScanFile v-if="openScan" :openScan="openScan" :scannerFiles="scannerFiles" @saveScanFile="saveScanFile" @closeOpen="closeOpen"></ScanFile>
|
|
|
+ <!-- 可用扫描仪信息 -->
|
|
|
+ <div>
|
|
|
+ <el-dialog v-model="checkScanner" title="扫描仪" width="30%">
|
|
|
+ <div v-for="item in scannerList" :key="item.scannerId" @click="checkScanFn(item)" :class="{'checkScan':item.scannerId ==checkScanId }">
|
|
|
+ {{item.scannerName}}
|
|
|
+ </div>
|
|
|
+ <template #footer>
|
|
|
+ <span class="dialog-footer">
|
|
|
+ <el-button @click="closeCheckScanner">取消</el-button>
|
|
|
+ <el-button type="primary" @click="sureScaner">确认</el-button>
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
+ <!-- 扫描文件移动到 -->
|
|
|
+ <MoveTo v-if="openScanMove" :spaceType='3' :scanFileArr="scanFileArr" :thisFolder="thisFolder" :openScanMove="openScanMove" @closeOpenScanMove='closeOpenScanMove'></MoveTo>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
@@ -474,6 +510,7 @@ import level4 from "@/assets/images/level4.png";
|
|
|
import { ElMessage, ElLoading } from 'element-plus'
|
|
|
import ImgPreview from '@/components/ImgPreview/ImgPreview.vue'
|
|
|
import ScanFile from '@/components/ScanFile/ScanFile.vue'
|
|
|
+import MoveTo from '@/components/MoveTo/MoveTo.vue'
|
|
|
import PathLabel from '@/components/PathLabel/index.vue'
|
|
|
import { preview } from "@/api/common/common.js";
|
|
|
import historyList from "@/components/historyList/index.vue"; //选择文件发送的列表,历史版本
|
|
@@ -488,6 +525,7 @@ import { encrypt, decrypt } from "@/utils/jsencrypt";
|
|
|
import Cookies from "js-cookie";
|
|
|
import elTableInfiniteScroll from 'el-table-infinite-scroll'
|
|
|
import { getLevel } from '@/api/level/level.js';
|
|
|
+import { listInfo,selectInfo ,getFileByScanerId} from '@/api/scanner/info.js';
|
|
|
import { getConfigKey } from "@/api/system/config.js"
|
|
|
|
|
|
export default {
|
|
@@ -689,11 +727,17 @@ export default {
|
|
|
const clickFileData = ref(null);
|
|
|
let fileBig = ref(0);
|
|
|
const maxFileSize = ref()//能上传的最大size
|
|
|
+ const scannerList = ref() // 扫描仪数据
|
|
|
+ const checkScanId = ref() // 选中的scan的id
|
|
|
+ const checkScanner = ref(false) //显示扫描仪选择框
|
|
|
+ const scannerFiles = ref([]) //选择的扫描仪的文件
|
|
|
+ const openScanMove = ref(false)
|
|
|
const pathLabelData = ref([
|
|
|
])
|
|
|
//控制宫格展示
|
|
|
const isList = ref(false); //控制显示方式
|
|
|
const openScan = ref(false)//控制扫描文档显示
|
|
|
+ const scanFileArr = ref([]) //认领的扫描文件数组
|
|
|
const changeShow = (fileGrids) => {
|
|
|
// isList.value = !isList.value;
|
|
|
// fileGrid.value = fileGrids
|
|
@@ -1729,7 +1773,7 @@ export default {
|
|
|
}
|
|
|
const res = await delFavorite(query)
|
|
|
//TODO 之后需要重新获取数据 并message提示
|
|
|
- console.log('res', res);
|
|
|
+ // console.log('res', res);
|
|
|
refreshFile()
|
|
|
}
|
|
|
//获取安全图标
|
|
@@ -1884,6 +1928,44 @@ export default {
|
|
|
return false
|
|
|
}
|
|
|
}
|
|
|
+ //获取扫描仪列表
|
|
|
+ const scannerFile =async ()=>{
|
|
|
+ const res = await selectInfo()
|
|
|
+ scannerList.value = res.rows
|
|
|
+ checkScanner.value = true
|
|
|
+ checkScanId.value = null
|
|
|
+ // console.log('scanner',res);
|
|
|
+ }
|
|
|
+ // 选择扫描仪
|
|
|
+ const checkScanFn = (item)=>{
|
|
|
+ checkScanId.value = item.scannerId
|
|
|
+ }
|
|
|
+ // 确认选择扫描仪 获取扫描仪下文件列表
|
|
|
+ const sureScaner =async ()=>{
|
|
|
+ if(!checkScanId.value) return
|
|
|
+ const res = await getFileByScanerId(checkScanId.value)
|
|
|
+ console.log('sureScanerres',res);
|
|
|
+ scannerFiles.value = res.data
|
|
|
+ checkScanner.value = false
|
|
|
+ openScan.value = true
|
|
|
+ }
|
|
|
+ // 关闭窗口
|
|
|
+ const closeCheckScanner = ()=>{
|
|
|
+ checkScanner.value = false
|
|
|
+ }
|
|
|
+ // 移动到事件
|
|
|
+ const saveScanFile = (arr)=>{
|
|
|
+ console.log('arr',arr);
|
|
|
+ openScan.value = false
|
|
|
+ scanFileArr.value = arr
|
|
|
+ openScanMove.value = true
|
|
|
+
|
|
|
+ }
|
|
|
+ // 关闭窗口
|
|
|
+ const closeOpenScanMove = ()=>{
|
|
|
+ openScanMove.value = false
|
|
|
+ refreshFile()
|
|
|
+ }
|
|
|
onMounted(() => {
|
|
|
// if(!thisFolder.value){
|
|
|
getAllTop()
|
|
@@ -2152,7 +2234,19 @@ export default {
|
|
|
upBefore,
|
|
|
openScan,
|
|
|
closeOpen,
|
|
|
- getFirstFolder
|
|
|
+ getFirstFolder,
|
|
|
+ scannerFile,
|
|
|
+ scannerList,
|
|
|
+ checkScanner,
|
|
|
+ checkScanId,
|
|
|
+ checkScanFn,
|
|
|
+ closeCheckScanner,
|
|
|
+ sureScaner,
|
|
|
+ scannerFiles,
|
|
|
+ saveScanFile,
|
|
|
+ openScanMove,
|
|
|
+ closeOpenScanMove,
|
|
|
+ scanFileArr
|
|
|
}
|
|
|
},
|
|
|
watch: {
|
|
@@ -2173,7 +2267,8 @@ export default {
|
|
|
PalaceGridFile,
|
|
|
inputPassword,
|
|
|
PathLabel,
|
|
|
- ScanFile
|
|
|
+ ScanFile,
|
|
|
+ MoveTo
|
|
|
},
|
|
|
}
|
|
|
|
|
@@ -2380,6 +2475,9 @@ p {
|
|
|
font-size: 12px;
|
|
|
}
|
|
|
}
|
|
|
+.checkScan{
|
|
|
+ background-color: #eee;
|
|
|
+}
|
|
|
|
|
|
:deep(.el-collapse-item__header) {
|
|
|
height: 24px !important;
|