liuQiang 2 anni fa
parent
commit
faf2e0ce99

+ 0 - 0
src/assets/images/Frame 187.png → src/assets/images/Frame_187.png


+ 0 - 0
src/assets/images/Frame 188.png → src/assets/images/Frame_188.png


+ 0 - 0
src/assets/images/Frame 427319127.png → src/assets/images/Frame_427319127.png


BIN
src/assets/images/add.png


+ 0 - 0
src/assets/images/空白页 1.png → src/assets/images/blankPage.png


+ 0 - 0
src/assets/images/fileType/file/DOC.png → src/assets/images/fileType/file_DOC.png


+ 0 - 0
src/assets/images/fileType/file/PPT.png → src/assets/images/fileType/file_PPT.png


+ 0 - 0
src/assets/images/fileType/file/TXT.png → src/assets/images/fileType/file_TXT.png


+ 0 - 0
src/assets/images/fileType/file/XLSX.png → src/assets/images/fileType/file_XLSX.png


+ 0 - 0
src/assets/images/fileType/file/audio.png → src/assets/images/fileType/file_audio.png


+ 0 - 0
src/assets/images/fileType/file/pdf.png → src/assets/images/fileType/file_pdf.png


+ 0 - 0
src/assets/images/fileType/file/pic.png → src/assets/images/fileType/file_pic.png


+ 0 - 0
src/assets/images/fileType/file/video.png → src/assets/images/fileType/file_video.png


+ 0 - 0
src/assets/images/fileType/file/zip、rar.png → src/assets/images/fileType/file_zip.png


+ 190 - 0
src/components/IdentifyFont/IdentifyFont.vue

@@ -0,0 +1,190 @@
+<template>
+  <div>
+    <el-dialog v-model="show" title="重命名" width="70%">
+      <div class="container">
+        <div v-if="!showImg" class="up_box">
+          <div class="left_box">
+            <div class="upimg_box">
+              <!-- TODO 拖拽设置不生效问题 -->
+              <el-upload
+                class="avatar-uploader"
+                :drag="true"
+                action="http://192.168.1.28:8080/api/upload"
+                :show-file-list="false"
+                :on-success="handleAvatarSuccess"
+                :before-upload="beforeUp"
+              >
+                <img src="@/assets/images/add.png" class="avatar" />
+                <span>将图片拖入框内/点击按钮上传图片</span>
+              </el-upload>
+            </div>
+            <div class="sunmit_btn">
+              <el-upload
+                class="avatar-uploader"
+                action="http://192.168.1.28:8080/api/upload"
+                :show-file-list="false"
+                :on-success="handleAvatarSuccess"
+                :before-upload="beforeUp"
+              >
+                <span>选择本地图片</span>
+              </el-upload>
+            </div>
+          </div>
+          <div class="right_box">
+            <div class="upimg_box">
+              <el-upload
+                class="avatar-uploader"
+                action="http://192.168.1.28:8080/api/upload"
+                :show-file-list="false"
+                :on-success="handleAvatarSuccess"
+              >
+                <img src="@/assets/images/add.png" class="avatar" />
+                <span>点击按钮上传图片</span>
+              </el-upload>
+            </div>
+            <div class="sunmit_btn">添加文库图片</div>
+          </div>
+        </div>
+        <div v-else>
+          <img :src="toRaw(showImg)" class="avatar" />
+        </div>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup>
+import { onMounted, ref, toRaw } from "vue";
+const textData = ref(""); //解析出来的文字
+const showImg = ref(); //上传的图片
+const show = ref(true);
+const handleAvatarSuccess = (msg, file) => {
+  console.log("re", msg);
+  const flieData = toRaw(file);
+  console.log("file", flieData);
+  showImg.value = URL.createObjectURL(flieData.raw);
+  if (msg.code === 200) {
+    textData.value = msg.msg;
+  }
+  console.log("textData", textData.value);
+};
+const beforeUp = () => {
+  console.log(2);
+};
+</script>
+
+<style lang="scss" scoped>
+.container {
+  height: 100%;
+  background-color: #fff;
+
+  .up_box {
+    display: flex;
+    justify-content: center;
+  }
+  .left_box {
+    width: 300px;
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    margin-right: 48px;
+    .upimg_box {
+      width: 100%;
+      height: 300px;
+      border: 1px solid #c1cce3;
+      display: flex;
+      align-items: center;
+      justify-content: center;
+    }
+    .sunmit_btn {
+      margin-top: 24px;
+      width: 120px;
+      height: 32px;
+      background: #2e6bc8;
+      border-radius: 4px 4px 4px 4px;
+      color: #fff;
+      font-size: 14px;
+      line-height: 32px;
+      font-weight: 400;
+      text-align: center;
+    }
+  }
+  .right_box {
+    width: 300px;
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    .upimg_box {
+      width: 100%;
+      height: 300px;
+      border: 1px solid #c1cce3;
+      display: flex;
+      align-items: center;
+      justify-content: center;
+    }
+    .sunmit_btn {
+      margin-top: 24px;
+      width: 120px;
+      height: 32px;
+      background: #2e6bc8;
+      border-radius: 4px 4px 4px 4px;
+      color: #fff;
+      font-size: 14px;
+      line-height: 32px;
+      font-weight: 400;
+      text-align: center;
+    }
+  }
+}
+:deep(.el-dialog__header) {
+  background-color: #eceff7;
+  margin-right: 0px;
+}
+.avatar-uploader .el-upload {
+  border: 1px dashed var(--el-border-color);
+  border-radius: 6px;
+  cursor: pointer;
+  position: relative;
+  overflow: hidden;
+  transition: var(--el-transition-duration-fast);
+}
+::v-deep .avatar-uploader .el-upload {
+  display: flex;
+  flex-direction: column;
+  img {
+    width: 40px;
+    height: 40px;
+    margin-bottom: 16px;
+  }
+  span {
+    font-size: 12px;
+    font-weight: 400;
+    color: #06286c;
+  }
+}
+::v-deep .sunmit_btn .avatar-uploader .el-upload {
+  span {
+    font-size: 14px;
+    font-weight: 400;
+    color: #fff;
+  }
+}
+::v-deep .avatar-uploader .el-upload .el-upload-dragger {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  border: none;
+}
+
+.avatar-uploader .el-upload:hover {
+  border-color: var(--el-color-primary);
+}
+
+.el-icon.avatar-uploader-icon {
+  font-size: 28px;
+  color: #8c939d;
+  width: 178px;
+  height: 178px;
+  text-align: center;
+}
+</style>

+ 31 - 0
src/components/ImgPreview/ImgPreview.vue

@@ -0,0 +1,31 @@
+<template>
+  <div class="img-viewer-box">
+    <el-image-viewer
+      v-if="state.visible"
+      :url-list="props.imgs"
+      @close="close"
+    />
+  </div>
+</template>
+
+
+<script  setup>
+import { ref, reactive } from "vue";
+import { useVModel } from "@vueuse/core";
+const props = defineProps();
+const emits = defineEmits();
+const state = reactive({
+  imgList: [],
+  // 相当于是set 与 get
+  visible: useVModel(props, "modelValue", emits),
+});
+
+// 点击关闭的时候,连同小图一起关闭
+function close() {
+  state.visible = false;
+}
+</script>
+
+
+<style lang="scss" scoped>
+</style>

+ 17 - 12
src/layout/indexCommon.vue

@@ -173,18 +173,23 @@ const toSearch = async () => {
   if (res) {
     // console.log("res", res);
     // console.log("router", route.path);
-    // if (route.path != "/search") {
-    router.replace({
-      path: "/search",
-      query: {
-        searchData: JSON.stringify(res),
-        searchText: searchText.value,
-      },
-    });
-    reload();
-    // } else {
-    //   reload();
-    // }
+    if (route.path != "/search") {
+      router.replace({
+        path: "/search",
+        query: {
+          searchData: JSON.stringify(res),
+          searchText: searchText.value,
+        },
+      });
+    } else {
+      router.replace({
+        path: "/allback",
+        query: {
+          searchData: JSON.stringify(res),
+          searchText: searchText.value,
+        },
+      });
+    }
   }
 };
 const emits = defineEmits(["setLayout"]);

+ 6 - 1
src/router/index.js

@@ -144,7 +144,12 @@ export const constantRoutes = [{
 					title: "高级搜索",
 					icon: "department"
 				}
-			}
+			},{
+				path: "/allback",
+				component: () => import("@/views/highSearch/SupplierAllBack.vue"),
+				name: "allback",
+				meta: { title: "kongbaiye", icon: "department" }
+			  }
 		]
 	},
 	{

+ 1 - 1
src/views/biz/recent/index.vue

@@ -91,7 +91,7 @@
               <div class="file_box" v-for="item in 20" :key="item">
                 <img
                   class="big_file_img"
-                  src="@/assets/images/fileType//fileDOC.png"
+                  src="@/assets/images/fileType//file_DOC.png"
                   alt=""
                 />
                 <span>Inceptos</span>

+ 1 - 1
src/views/collect/index.vue

@@ -173,7 +173,7 @@
               <div class="file_box" v-for="item in 20" :key="item">
                 <img
                   class="big_file_img"
-                  src="@/assets/images/fileType//fileDOC.png"
+                  src="@/assets/images/fileType//file_DOC.png"
                   alt=""
                 />
                 <span>Inceptos</span>

+ 10 - 2
src/views/highSearch/HighSearch.vue

@@ -1,7 +1,7 @@
 <template>
   <div class="container">
     <div class="logo">
-      <img src="@/assets/images/Frame 427319127.png" alt="" />
+      <img src="@/assets/images/Frame_427319127.png" alt="" />
       <div class="font">Domino’s File</div>
     </div>
     <div class="search_box">
@@ -72,16 +72,19 @@
         <!-- </el-scrollbar> -->
       </div>
       <div class="error" v-if="noData">
-        <img src="@/assets/images/空白页 1.png" alt="" />
+        <img src="@/assets/images/blankPage.png" alt="" />
         <span>没有关于“{{ noFound }}”的结果 </span>
       </div>
     </div>
+    <IdentifyFont :showIdentify="showIdentify"></IdentifyFont>
   </div>
+
 </template>
 
 <script setup>
 import { onMounted, ref } from "vue";
 import { search } from "@/api/search/search.js";
+import IdentifyFont from '@/components/IdentifyFont/IdentifyFont.vue'
 const searchText = ref(""); //搜索ipt的值
 const selectValue = ref(1); //文档空间类型
 const page = ref(1); //页数
@@ -96,6 +99,11 @@ const selectOptions = [
   { label: "部门文档", value: 2 },
   { label: "个人文档", value: 3 },
 ];
+
+// ----------------------------
+const showIdentify = ref(true)
+// ----------------------------
+
 onMounted(async () => {});
 
 const doSearch = async () => {

+ 25 - 0
src/views/highSearch/SupplierAllBack.vue

@@ -0,0 +1,25 @@
+<template>
+  <div></div>
+</template>
+
+<script setup>
+// 为了实现文件搜索的无缝传参
+import { onMounted } from "vue";
+import { useRouter, useRoute } from "vue-router";
+onMounted(() => {
+  let router = useRouter();
+  let route = useRoute();
+  const searchText = route.query.searchText;
+  const searchData = route.query.searchData;
+  router.replace({
+    path: "/search",
+    query: {
+      searchData: searchData,
+      searchText: searchText,
+    },
+  });
+});
+</script>
+
+<style lang="scss" scoped>
+</style>

+ 3 - 0
src/views/myfile/MyFile.vue

@@ -410,6 +410,8 @@
             </div>
         </div>
     </div>
+    <!-- 图片预览 -->
+    <!-- <ImgPreview ></ImgPreview> -->
 </template>
 
 <script>
@@ -434,6 +436,7 @@ import pptx from '../../assets/images/pptx.png'
 import word from '../../assets/images/word.png'
 import pdf from '../../assets/images/pdf.png'
 import xlxs from '../../assets/images/xlxs.png'
+import ImgPreview from "@/components/ImgPreview/ImgPreview.vue"
 export default {
     setup() {
         let searchFire = ref('')

+ 14 - 13
src/views/search/index.vue

@@ -51,7 +51,7 @@
           alt=""
         />
         <img
-          src="@/assets/images/Frame 188.png"
+          src="@/assets/images/Frame_188.png"
           @click="changeSort"
           v-else
           alt=""
@@ -64,7 +64,7 @@
         />
         <img
           v-else
-          src="@/assets/images/Frame 187.png"
+          src="@/assets/images/Frame_187.png"
           alt=""
           @click="changeShow"
         />
@@ -141,6 +141,7 @@ const searchText = ref(""); //搜索ipt的值
 const baseData = ref(); //搜索出的原始数据
 const isAsc = ref("asc");
 
+
 const reload = inject("reload");
 onMounted(() => {
   let route = useRoute();
@@ -199,37 +200,37 @@ const fliterListData = (dataList) => {
 const setIcon = (fileType) => {
   switch (fileType) {
     case ".docx":
-      return "src/assets/images/fileType/fileDOC.png";
+      return "src/assets/images/fileType/file_DOC.png";
       break;
     case ".pdf":
-      return "src/assets/images/fileType/filepdf.png";
+      return "src/assets/images/fileType/file_pdf.png";
       break;
     case ".ppt":
-      return "src/assets/images/fileType/filePPT.png";
+      return "src/assets/images/fileType/file_PPT.png";
       break;
     case ".txt":
-      return "src/assets/images/fileType/fileTXT.png";
+      return "src/assets/images/fileType/file_TXT.png";
       break;
     case ".xlsx":
-      return "src/assets/images/fileType/fileXLSX.png";
+      return "src/assets/images/fileType/file_XLSX.png";
       break;
     case ".csv":
-      return "src/assets/images/fileType/fileXLSX.png";
+      return "src/assets/images/fileType/file_XLSX.png";
       break;
     case ".png":
-      return "src/assets/images/fileType/filepic.png";
+      return "src/assets/images/fileType/file_pic.png";
       break;
     case ".mp3":
-      return "src/assets/images/fileType/fileaudio.png";
+      return "src/assets/images/fileType/file_audio.png";
       break;
     case ".mp4":
-      return "src/assets/images/fileType/filevideo.png";
+      return "src/assets/images/fileType/file_video.png";
       break;
     case ".zip":
-      return "src/assets/images/fileType/file/zip、rar.png";
+      return "src/assets/images/fileType/file_zip.png";
       break;
     default:
-      return "src/assets/images/fileType/fileDOC.png";
+      return "src/assets/images/fileType/file_DOC.png";
       break;
   }
 };

+ 2 - 2
vite.config.js

@@ -39,8 +39,8 @@ export default defineConfig(({
 			proxy: {
 				// https://cn.vitejs.dev/config/#server-proxy
 				'/dev-api': {
-					// target: 'http://192.168.1.28:8080/',
-					target: 'http://8.142.173.95:19527/',
+					target: 'http://192.168.1.28:8080/',
+					// target: 'http://8.142.173.95:19527/',
 					// target:'http://192.168.1.18:8080/',
 					changeOrigin: true,
 					rewrite: (p) => p.replace(/^\/dev-api/, '')