11wqe1 6 hónapja
szülő
commit
4c274a3a1e

+ 1 - 0
src/assets/ETL.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1741845153521" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4589" width="16" height="16" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M215.202634 583.178185c30.208725 0 52.787167 7.25566 52.302832 37.622262-0.482997 30.311078-26.522695 37.62427-56.837787 37.62427H147.073284c-59.845481 0-108.35993-33.646568-108.35993-93.492718V186.929241c0-59.845481 48.514449-108.35993 108.35993-108.35993h448.662156c59.842805 0 108.355247 48.512442 108.355247 108.355247v377.385298c0 59.845481-48.514449 97.141954-108.35993 97.141955H524.383658c-28.547001 0-52.294805-8.712679-52.81794-37.254998-0.557922-30.443534 22.045272-36.684365 52.300825-36.684365h74.221668c34.705549-2.071803 40.898883-31.667082 40.898883-50.629735V197.079539c0-18.962653-11.329025-49.514561-47.319667-47.319667H152.358156c-33.200364-3.478649-47.319667 28.357014-47.319667 47.319667v339.360315c-0.006021 25.886504 21.824511 46.431942 44.021639 46.115519h66.141837v0.622812zM499.539411 426.422213l-67.540655 1.21619c-25.204153-1.425577-40.898883 25.584798-40.898883 44.54812v362.266552c-2.282529 25.140601 21.935561 41.540426 40.898883 41.540426l438.770081 0.067566c18.962653 0 39.389015-15.825848 40.898883-44.54812V467.321096c0-15.313416-13.066342-42.392026-40.898883-40.898883h-65.190559c-28.546332 0-52.292798-5.062773-52.816602-33.604422-0.557922-30.443534 22.045272-40.267374 52.300825-40.267374h71.868897c59.842805 0 108.355247 47.296253 108.355248 107.139058v377.385298c0 59.842805-48.512442 108.355247-108.355248 108.355247H427.052384c-59.845481 0-108.35993-48.514449-108.35993-108.35993V455.954609c0-59.844812 48.51378-103.493166 108.359261-103.493165h71.725738c29.095558 0 53.175839 9.842571 53.072818 38.938128-0.106366 29.806674-22.487462 35.022641-52.31086 35.022641z m0 0" p-id="4590" fill="#ffffff"></path></svg>

+ 1 - 0
src/assets/copyFlieG2.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1741934094284" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5498" width="16" height="16" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M892.34887 782.047397H722.695987V903.400098c0 70.643533-73.775215 120.569781-144.418748 120.569781H128.70011a128.880784 128.880784 0 0 1-128.519436-128.519437V445.873314C0.180674 375.229781 49.805798 301.153442 120.449331 301.153442h119.726635V131.440334c0-72.149149 59.200846-131.229546 131.53067-131.229546h520.642234c72.390048 0 131.590894 59.080397 131.590895 131.229546v519.437741a131.771568 131.771568 0 0 1-131.590895 131.169322zM244.572367 682.736923a126.170674 126.170674 0 0 1-2.589661-14.393695C241.862257 666.235365 240.898662 664.609299 240.898662 662.501436v-4.637299c-0.120449-2.348762-0.722696-4.637299-0.722696-6.986062V361.378108H120.449331c-38.543786 0-56.008939 45.95142-56.008939 84.495206v449.577128c0 38.543786 25.715932 64.259718 64.259718 64.259719h449.577129c38.543786 0 84.194083-17.766276 84.194083-56.310063v-120.449331H361.347994c-63.296124 0-107.741927-41.073222-116.775627-100.213844zM958.17443 131.440334c0-39.386931-26.318179-65.584661-65.82556-65.58466H371.706636c-39.447156 0-65.765335 26.19773-65.765335 65.58466v519.437741c0 39.326707 26.318179 65.584661 65.765335 65.584661h520.642234c39.507381 0 65.82556-26.257954 65.82556-65.584661V131.440334z m-296.064456 410.852669h-60.104217V422.084571H481.797325V361.980354h120.208432V241.771922h60.104217V361.980354h120.208432v60.104217h-120.208432v120.208432z" p-id="5499" fill="#8A8A8A"></path></svg>

+ 1 - 0
src/assets/delBtn.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1741845225307" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="8269" width="16" height="16" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M456.909 72c-30.426 0-55.091 24.634-55.091 55.021v36.681h220.364v-36.681c0-30.387-24.665-55.021-55.091-55.021H456.909zM181.455 218.723H108v73.362h73.455v430.681c-0.001 29.527-0.001 53.896 1.623 73.748 1.686 20.618 5.306 39.571 14.389 57.374a146.819 146.819 0 0 0 64.201 64.12c17.825 9.071 36.802 12.686 57.447 14.371 19.876 1.622 44.276 1.621 73.84 1.621h238.09c29.564 0 53.964 0.001 73.84-1.621 20.645-1.685 39.622-5.3 57.447-14.371a146.819 146.819 0 0 0 64.201-64.12c9.083-17.803 12.703-36.756 14.389-57.374 1.624-19.851 1.624-44.221 1.623-73.747V292.085H916v-73.362H181.455z m587.636 73.362v429.166c0 31.42-0.029 52.779-1.379 69.289-1.316 16.081-3.7 24.305-6.627 30.042a73.405 73.405 0 0 1-32.101 32.06c-5.744 2.923-13.979 5.305-30.08 6.619-16.531 1.349-37.917 1.377-69.377 1.377H394.473c-31.46 0-52.846-0.028-69.377-1.377-16.101-1.314-24.336-3.696-30.08-6.619a73.41 73.41 0 0 1-32.101-32.06c-2.927-5.737-5.311-13.961-6.627-30.042-1.35-16.51-1.379-37.869-1.379-69.289V292.085h514.182z m-404 330.128v73.361h293.818v-73.361H365.091z" p-id="8270" fill="#ffffff"></path></svg>

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 0 - 0
src/assets/shuax.svg


+ 1 - 0
src/assets/xjt.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1741933972567" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4333" width="16" height="16" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M873.7 406.62L545.94 734.39c-18.72 18.72-49.16 18.72-67.88 0L150.3 406.62c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0L512 677.83l316.45-316.45c12.5-12.5 32.75-12.5 45.25 0 6.25 6.25 9.38 14.44 9.38 22.62s-3.13 16.38-9.38 22.62zM523.31 689.45v-0.31 0.31z" fill="#667085" p-id="4334"></path></svg>

+ 1 - 0
src/assets/yichuBtn.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1741845189737" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6805" width="16" height="16" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M963.896 515.505c0.11-1.171 0.086-2.332 0.093-3.505-0.007-1.173 0.018-2.334-0.093-3.505-0.163-1.996-0.53-3.949-0.989-5.9-0.084-0.339-0.131-0.68-0.225-1.018a39.558 39.558 0 0 0-9.517-17.153L817.763 311.116c-13.602-17.408-38.739-20.495-56.147-6.895-17.408 13.602-20.494 38.739-6.894 56.147L841.938 472H408c-22.092 0-40 17.908-40 40 0 22.091 17.908 40 40 40h433.938l-87.216 111.631c-13.601 17.408-10.515 42.546 6.894 56.146s42.546 10.515 56.147-6.894l135.405-173.312a39.575 39.575 0 0 0 9.513-17.148c0.094-0.339 0.142-0.682 0.227-1.021 0.458-1.95 0.824-3.902 0.988-5.897z" fill="#ffffff" p-id="6806"></path><path d="M360 880H256c-61.855 0-112-50.145-112-112V256c0-61.856 50.145-112 112-112h104c22.092 0 40-17.909 40-40 0-22.092-17.908-40-40-40H256C149.961 64 64 149.961 64 256v512c0 106.038 85.961 192 192 192h104c22.092 0 40-17.909 40-40 0-22.092-17.908-40-40-40z" fill="#ffffff" p-id="6807"></path></svg>

+ 8 - 1
src/components/pages/knowledge/components/checkDialog.vue

@@ -357,8 +357,12 @@ export default {
   height: calc(100% - 100px);
   height: calc(100% - 100px);
   transform: translateY(-50%);
   transform: translateY(-50%);
   top: 50%;
   top: 50%;
+  border-radius: 8px;
+}
+.el-dialogClass >>> .el-dialog__header{
+  padding: 20px 30px 10px;
+  box-sizing: border-box;
 }
 }
-
 .el-dialogClass >>> .el-dialog__body {
 .el-dialogClass >>> .el-dialog__body {
   height: calc(100% - 70px - 55px);
   height: calc(100% - 70px - 55px);
   overflow-y: auto;
   overflow-y: auto;
@@ -368,7 +372,9 @@ export default {
 }
 }
 .container {
 .container {
   height: 100%;
   height: 100%;
+  padding: 0 10px;
   overflow: auto;
   overflow: auto;
+  /* box-sizing: border-box; */
 }
 }
 
 
 .contentBox {
 .contentBox {
@@ -394,6 +400,7 @@ export default {
 }
 }
 
 
 .contentBox > .content > .text {
 .contentBox > .content > .text {
+  line-height: 22px;
 }
 }
 
 
 .nav {
 .nav {

+ 100 - 25
src/components/pages/knowledge/components/relateFiles.vue

@@ -8,19 +8,17 @@
   >
   >
     <div class="f_box">
     <div class="f_box">
       <div class="f_box_top">
       <div class="f_box_top">
-        <div class="f_box_top_left">
-          <div class="f_box_top_title">我的文件</div>
-        </div>
-        <div class="f_box_top_right">
-          <span v-if="checkArray.length" style="margin-right: 10px;color: #b0b0b0;font-size: 14px;">已选文件{{checkArray.length}}个</span>
-          <el-button type="primary" size="small" @click="serchFile"
-            >刷新</el-button
-          >
+        <!-- <div class="f_box_top_left">
+        </div> -->
+        <!-- <div class="f_box_top_right"> -->
+         
           <!-- <div class="btn" @click="serchFile">刷新</div> -->
           <!-- <div class="btn" @click="serchFile">刷新</div> -->
-        </div>
+        <!-- </div> -->
       </div>
       </div>
       <div class="f_box_top">
       <div class="f_box_top">
         <div class="f_box_top_left">
         <div class="f_box_top_left">
+          <div class="f_box_top_title">我的文件</div>
+
           <el-select v-model="mofolderid" filterable @change="serchFile">
           <el-select v-model="mofolderid" filterable @change="serchFile">
             <el-option
             <el-option
               v-for="item in myFolderArray"
               v-for="item in myFolderArray"
@@ -33,14 +31,23 @@
         </div>
         </div>
         <div class="f_box_top_right">
         <div class="f_box_top_right">
           <div class="input">
           <div class="input">
+            <div class="serch" @click="serchFile"></div>
+
             <input
             <input
               type="text"
               type="text"
               v-model="fileName"
               v-model="fileName"
               placeholder="请输入你需要搜索的文件名字"
               placeholder="请输入你需要搜索的文件名字"
               @keyup.enter="serchFile"
               @keyup.enter="serchFile"
             />
             />
-            <div class="serch" @click="serchFile"></div>
           </div>
           </div>
+          
+          <el-button type="primary" size="small" @click="serchFile"
+            >
+            <img style="vertical-align: middle;transform: scale(1.1);padding-bottom: 2px;box-sizing: border-box;" src="../../../../assets/shuax.svg" alt="">
+            刷新</el-button
+          >
+          <span v-if="checkArray.length" style="margin-left: 12px;color: #b0b0b0;font-size: 14px;flex-shrink: 0;line-height: 35px;">已选文件{{checkArray.length}}个</span>
+
         </div>
         </div>
       </div>
       </div>
       <div class="none_box" v-if="fileArray.length == 0">暂无上传文件</div>
       <div class="none_box" v-if="fileArray.length == 0">暂无上传文件</div>
@@ -71,17 +78,18 @@
               min-width="15"
               min-width="15"
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
-              prop="username"
-              label="拥有者"
+              prop="folderName"
+              label="所属文件夹"
               show-overflow-tooltip
               show-overflow-tooltip
               min-width="20"
               min-width="20"
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
-              prop="folderName"
-              label="所属文件夹"
+              prop="username"
+              label="拥有者"
               show-overflow-tooltip
               show-overflow-tooltip
-              min-width="20"
+              width="160"
             ></el-table-column>
             ></el-table-column>
+           
             <el-table-column label="处理状态" width="80px">
             <el-table-column label="处理状态" width="80px">
               <template slot-scope="scope">
               <template slot-scope="scope">
                 {{ getState(scope.row.ingestionStatus) }}
                 {{ getState(scope.row.ingestionStatus) }}
@@ -133,7 +141,6 @@
         <el-pagination
         <el-pagination
           class="pageBox"
           class="pageBox"
           style="margin-top: 10px"
           style="margin-top: 10px"
-          background
           layout="total, prev, pager, next"
           layout="total, prev, pager, next"
           :page-size="limit"
           :page-size="limit"
           :total="total"
           :total="total"
@@ -335,9 +342,12 @@ export default {
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
 }
 }
-
+.f_box_top_left >>> .el-input--suffix .el-input__inner{
+  height: 36px;
+}
 .f_box_top_title {
 .f_box_top_title {
   font-size: 16px;
   font-size: 16px;
+  margin-right: 16px;
   /* font-weight: bold; */
   /* font-weight: bold; */
 }
 }
 
 
@@ -383,15 +393,20 @@ export default {
 
 
 .f_box_top_right {
 .f_box_top_right {
   margin-left: auto;
   margin-left: auto;
-  max-width: calc(100% - 280px);
+  /* max-width: calc(100% - 280px); */
   overflow: hidden;
   overflow: hidden;
   display: flex;
   display: flex;
-  align-items: center;
+  /* align-items: center; */
+}
+.f_box_top_right >>> .el-button{
+  height: 35px !important;
+  font-size: 12.8px;
+  background-color: #3370FF;
+  border-radius: 6px;
+  margin-left: 12px;
 }
 }
-
 .f_box_top_right > .input {
 .f_box_top_right > .input {
   position: relative;
   position: relative;
-  width: 280px;
   height: 40px;
   height: 40px;
 }
 }
 
 
@@ -400,9 +415,13 @@ export default {
   height: 100%;
   height: 100%;
   border: 1px solid #dcdfe6;
   border: 1px solid #dcdfe6;
   border-radius: 5px;
   border-radius: 5px;
-  padding: 0 45px 0 15px;
+  padding: 0 15px 0 45px;
   box-sizing: border-box;
   box-sizing: border-box;
   font-size: 14px;
   font-size: 14px;
+  width: 250px;
+  height: 36px;
+  font-size: 12.8px;
+  border-radius: 6px;
   outline: none;
   outline: none;
 }
 }
 
 
@@ -414,7 +433,7 @@ export default {
   background-image: url("../../../../assets/icon/sourceFile/search.png");
   background-image: url("../../../../assets/icon/sourceFile/search.png");
   background-size: 100% 100%;
   background-size: 100% 100%;
   position: absolute;
   position: absolute;
-  right: 13px;
+  left: 13px;
   top: 50%;
   top: 50%;
   transform: translateY(-50%);
   transform: translateY(-50%);
   cursor: pointer;
   cursor: pointer;
@@ -605,9 +624,12 @@ export default {
   padding: 10px 0;
   padding: 10px 0;
   box-sizing: border-box;
   box-sizing: border-box;
 }
 }
-
-.f_box_file_list > .f_box_file {
+.f_box_file_list >>> .el-table-column--selection .cell{
+    display: flex !important;
+    align-items: center !important;
 }
 }
+/* .f_box_file_list > .f_box_file {
+} */
 
 
 .f_box_file_allCheck {
 .f_box_file_allCheck {
   display: flex;
   display: flex;
@@ -752,4 +774,57 @@ export default {
 .pageBox >>> .el-pagination__total{
 .pageBox >>> .el-pagination__total{
   margin-right: auto;
   margin-right: auto;
 }
 }
+.list_file_box {
+  width: 100%;
+}
+.list_file_box>>> .el-table{
+  border-radius: 10px !important;
+  overflow: hidden !important;
+}
+
+.list_file_box >>>table th{
+  border:none !important;
+  background-color: #f2f3f6 !important; /* 浅灰色背景 */
+  color: #00000099 !important;
+}
+.list_file_box >>>table tr td{
+  border:none !important;
+  border-bottom: 1px solid #EBEEF5 !important;
+}
+
+.list_file_box >>>table tr {
+  border:1px #000 solid !important;
+}
+
+.list_file_box >>> .el-table__header-wrapper{
+  margin-bottom: 10px !important;
+}
+
+.list_file_box >>> .el-table__row{
+  border: 1px #ccc solid;
+}
+.list_file_box >>>table tr td:nth-child(1){
+  border-radius: 10px 0 0 10px !important;
+}
+.list_file_box >>>table tr td:nth-last-child(1){
+  border-radius: 0 10px 10px 0 !important;
+}
+
+.list_file_box >>>table tr th:nth-child(1){
+  border-radius: 10px 0 0 10px;
+}
+
+.list_file_box >>>table tr th:nth-last-child(2){
+  border-radius: 0 10px 10px 0 !important;
+}
+.list_file_box >>>.el-table::before{
+  background-color: #fff;
+}
+.list_file_box >>>.el-table--border::after{
+  background-color: #fff;
+}
+.list_file_box >>> .el-table--border{
+  border: none;
+  border-bottom: 1px solid #EBEEF5;
+}
 </style>
 </style>

+ 35 - 33
src/components/pages/knowledge/fileBox.vue

@@ -51,10 +51,10 @@
               multiple="multiple"
               multiple="multiple"
               @change="beforeUpload($event)"
               @change="beforeUpload($event)"
           /></el-button>
           /></el-button>
-          <el-button type="danger" size="small" v-if="checkArray.length" @click="batchDelete"
+          <el-button style="background: #F56C6C;" type="danger" size="small" v-if="checkArray.length" @click="batchDelete"
             >删除</el-button
             >删除</el-button
           >
           >
-          <span v-if="checkArray.length" style="margin-left: 12px;color: #b0b0b0;font-size: 14px;">已选文件{{checkArray.length}}个</span>
+          <span v-if="checkArray.length" style="margin-left: 12px;color: #b0b0b0;font-size: 14px;flex-shrink:0;line-height: 35px;">已选文件{{checkArray.length}}个</span>
 
 
       </div>
       </div>
       </div>
       </div>
@@ -199,7 +199,6 @@
       <el-pagination
       <el-pagination
         class="pageBox"
         class="pageBox"
         style="margin-top: 10px"
         style="margin-top: 10px"
-        background
         layout="total,prev, pager, next"
         layout="total,prev, pager, next"
         :page-size="limit"
         :page-size="limit"
         :total="total"
         :total="total"
@@ -659,10 +658,10 @@ export default {
 
 
 .f_box_top_right {
 .f_box_top_right {
   margin-left: auto;
   margin-left: auto;
-  max-width: calc(100% - 280px);
+  /* max-width: calc(100% - 280px); */
   overflow: hidden;
   overflow: hidden;
   display: flex;
   display: flex;
-  align-items: center;
+  /* align-items: center; */
 }
 }
 .f_box_top_right >>> .el-icon-plus:before {
 .f_box_top_right >>> .el-icon-plus:before {
   font-size: 14px;
   font-size: 14px;
@@ -674,9 +673,7 @@ export default {
 }
 }
 .f_box_top_right > .input {
 .f_box_top_right > .input {
   position: relative;
   position: relative;
-  width: 280px;
   height: 40px;
   height: 40px;
-  margin-right: 12px;
 }
 }
 
 
 .f_box_top_right > .input > input {
 .f_box_top_right > .input > input {
@@ -687,12 +684,19 @@ export default {
   padding: 0 15px 0 45px;
   padding: 0 15px 0 45px;
   box-sizing: border-box;
   box-sizing: border-box;
   font-size: 14px;
   font-size: 14px;
+  width: 250px;
+  height: 36px;
+  font-size: 12.8px;
+  border-radius: 6px;
   outline: none;
   outline: none;
 }
 }
 
 
 .f_box_top_right >>> .el-button{
 .f_box_top_right >>> .el-button{
-  height: 38px !important;
-  font-size: 14px;
+  height: 35px !important;
+  font-size: 12.8px;
+  background-color: #3370FF;
+  border-radius: 6px;
+  margin-left: 12px;
 }
 }
 .f_box_top_right > .input > .serch {
 .f_box_top_right > .input > .serch {
   content: "";
   content: "";
@@ -887,8 +891,6 @@ export default {
 }
 }
 
 
 .f_box_file_list {
 .f_box_file_list {
-  /* height: calc(100% - 55px); */
-  /* overflow: auto; */
   width: 100%;
   width: 100%;
   padding: 10px;
   padding: 10px;
   box-sizing: border-box;
   box-sizing: border-box;
@@ -1135,15 +1137,7 @@ export default {
 .BtnHP >>>.el-popper .popper__arrow, .el-popper .popper__arrow::after{
 .BtnHP >>>.el-popper .popper__arrow, .el-popper .popper__arrow::after{
   display: none;
   display: none;
 }
 }
-.btnBh{
-  display: flex;
-  /* align-items: center; */
-  justify-content: center;
-  cursor: pointer;
-  /* height: 28px; */
-  padding: 4px 10px;
-  border-radius: 5px;
-}
+
 .btnBh:hover{
 .btnBh:hover{
   background: #F0F4FF;
   background: #F0F4FF;
 }
 }
@@ -1151,18 +1145,12 @@ export default {
   margin-right: 5px;
   margin-right: 5px;
   width: 17px;
   width: 17px;
 }
 }
-.btnBh2{
-  display: flex;
-  align-items: center;
-  justify-content: center;
-  cursor: pointer;
-  height: 28px;
-  padding: 0 10px;
-  border-radius: 5px;
-}
+
 .btnBh2 img{
 .btnBh2 img{
-  width: 14px;
+  width: 17px;
   margin-right: 5px;
   margin-right: 5px;
+  padding: 1.5px;
+  box-sizing: border-box;
 }
 }
 .btnBh2:hover{
 .btnBh2:hover{
   background: #FBEAE8;
   background: #FBEAE8;
@@ -1173,14 +1161,28 @@ export default {
 .lookHp2{
 .lookHp2{
   color: #487FFF;
   color: #487FFF;
 }
 }
-
+.btnBh2{
+  display: flex;
+  align-items: center;
+  cursor: pointer;
+  padding: 5px 8px;
+  border-radius: 5px;
+  box-sizing: border-box;
+}
+.btnBh{
+  display: flex;
+  cursor: pointer;
+  border-radius: 6px;
+  padding: 5px 8px;
+}
 </style>
 </style>
 
 
 <style>
 <style>
 .custom-popover {
 .custom-popover {
-  min-width: 88px !important;
+  min-width: 70px !important;
   width: auto !important;
   width: auto !important;
-  padding: 8px;
+  padding: 8px 6px;
+  border-radius: 8px;
 }
 }
 </style>
 </style>
 
 

+ 81 - 40
src/components/pages/knowledge/folder.vue

@@ -62,12 +62,12 @@
       </div>
       </div>
       <div class="f_box_top_right">
       <div class="f_box_top_right">
         <div>
         <div>
-          <div class="left" style="display: flex;justify-content: flex-end;padding: 10px 12px;">
+          <div class="left" style="display: flex;justify-content: flex-end;padding: 10px 16px;">
           <span class="list" :class="{ active: stype2 == 1 }" @click="checkStype2(1)"></span>
           <span class="list" :class="{ active: stype2 == 1 }" @click="checkStype2(1)"></span>
           <span class="table" :class="{ active: stype2 == 2 }" @click="checkStype2(2)"></span>
           <span class="table" :class="{ active: stype2 == 2 }" @click="checkStype2(2)"></span>
         </div>
         </div>
         </div>
         </div>
-        <div class="input" style="margin-right: 12px;">
+        <div class="input">
           <div class="serch"></div>
           <div class="serch"></div>
           <input
           <input
             type="text"
             type="text"
@@ -81,10 +81,10 @@
           style="background-color: #3370FF;height: 38px;" size="small" @click="openAdd"
           style="background-color: #3370FF;height: 38px;" size="small" @click="openAdd"
           icon="el-icon-plus"
           icon="el-icon-plus"
             >新建文件夹</el-button>
             >新建文件夹</el-button>
-          <el-button style="height: 38px;margin-right: 12px;" type="danger" v-if="checkArray.length && stype2 == 2" size="small" @click="deleteFolder"
+          <el-button  style="height: 38px;margin-right: 12px;background: #F56C6C;" type="danger" v-if="checkArray.length && stype2 == 2" size="small" @click="deleteFolder"
             >删除</el-button
             >删除</el-button
           >
           >
-          <span v-if="checkArray.length && stype2 == 2" style="margin-right: 10px;color: #b0b0b0;font-size: 14px;">已选文件夹{{checkArray.length}}个</span>
+          <span v-if="checkArray.length && stype2 == 2" style="margin-right: 10px;color: #b0b0b0;font-size: 14px;flex-shrink:0;">已选文件夹{{checkArray.length}}个</span>
         </div>
         </div>
       </div>
       </div>
     </div>
     </div>
@@ -99,7 +99,8 @@
     >
     >
 
 
     <!-- 切换样式 -->
     <!-- 切换样式 -->
-     <div v-if="stype2 == 1" class="listBlockS" :style="{'grid-template-columns': `repeat(${lisTnum}, 1fr)`}">
+    <!-- :style="{'grid-template-columns': `repeat(${lisTnum}, 1fr)`}" -->
+     <div v-if="stype2 == 1" class="listBlockS" >
         <div class="listBlock"  @click="editFile(item.id, item.folderid)" v-for="(item,index) in fileArray" :key="index">
         <div class="listBlock"  @click="editFile(item.id, item.folderid)" v-for="(item,index) in fileArray" :key="index">
           <div class="listBlockTit">
           <div class="listBlockTit">
             <div class="listBlockTit">
             <div class="listBlockTit">
@@ -116,9 +117,9 @@
           </div>
           </div>
           <div class="listBlockTit">
           <div class="listBlockTit">
             <div class="owerCon" >
             <div class="owerCon" >
-                <div style="display: flex;align-items: center;margin-right: 10px;">
+                <div style="display: flex;align-items: center;margin-right: 14px;">
                   <img  src="../../../assets/owerlogo.png" alt="">
                   <img  src="../../../assets/owerlogo.png" alt="">
-                  {{ item.username }}
+                  <div class="perName" >{{ item.username }}</div>
                 </div>
                 </div>
                 <div style="display: flex;align-items: center;margin-right: 10px;flex-shrink: 0;">
                 <div style="display: flex;align-items: center;margin-right: 10px;flex-shrink: 0;">
                   <img v-if="item.juri == 1" style="width: 13px;" src="../../../assets/siyou1.svg" alt="">
                   <img v-if="item.juri == 1" style="width: 13px;" src="../../../assets/siyou1.svg" alt="">
@@ -358,7 +359,6 @@
       <el-pagination
       <el-pagination
         class="pageBox"
         class="pageBox"
         style="margin-top: 10px;"
         style="margin-top: 10px;"
-        background
         layout="total, prev, pager, next"
         layout="total, prev, pager, next"
         :page-size="10"
         :page-size="10"
         :total="total"
         :total="total"
@@ -370,9 +370,15 @@
       title="新建文件夹"
       title="新建文件夹"
       :visible.sync="moveBox"
       :visible.sync="moveBox"
       width="550px"
       width="550px"
+      style="border-radius: 8px;"
       @close="moveBox = false"
       @close="moveBox = false"
-      class="dialog"
+      class="canEditCss"
     >
     >
+    <div class="canEditTit" slot="title">
+      <img src="../../../assets/listfolder2.svg" alt="">
+      <span>新建文件夹</span>
+    </div>
+
       <div>
       <div>
         <el-input
         <el-input
           v-model="folderName"
           v-model="folderName"
@@ -799,6 +805,7 @@ export default {
   display: grid;
   display: grid;
   font-family: PingFang;
   font-family: PingFang;
   gap: 20px;
   gap: 20px;
+  grid-template-columns: repeat(4, 1fr);
   -webkit-box-align: stretch;
   -webkit-box-align: stretch;
   align-items: stretch;
   align-items: stretch;
 }
 }
@@ -942,7 +949,7 @@ export default {
 
 
 .f_box_top_right {
 .f_box_top_right {
   margin-left: auto;
   margin-left: auto;
-  max-width: calc(100% - 280px);
+  /* max-width: calc(100% - 280px); */
   overflow: hidden;
   overflow: hidden;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -953,16 +960,20 @@ export default {
   /* vertical-align: middle;  */
   /* vertical-align: middle;  */
 }
 }
 .f_box_top_right >>> .el-button{
 .f_box_top_right >>> .el-button{
-  height: 38px !important;
-  font-size: 14px;
+  height: 35px !important;
+  font-size: 12.8px;
+  background-color: #3370FF;
+  border-radius: 6px;
+  margin-left: 12px;
 }
 }
 .f_box_top_right >>>.el-button--primary:focus,.f_box_top_right>>> .el-button--primary:hover{
 .f_box_top_right >>>.el-button--primary:focus,.f_box_top_right>>> .el-button--primary:hover{
   filter: brightness(120%);
   filter: brightness(120%);
 }
 }
 .f_box_top_right > .input {
 .f_box_top_right > .input {
   position: relative;
   position: relative;
-  width: 280px;
   height: 40px;
   height: 40px;
+  display: flex;
+  align-items: center;
 }
 }
 
 
 .f_box_top_right > .input > input {
 .f_box_top_right > .input > input {
@@ -973,6 +984,10 @@ export default {
   padding: 0 15px 0 45px;
   padding: 0 15px 0 45px;
   box-sizing: border-box;
   box-sizing: border-box;
   font-size: 14px;
   font-size: 14px;
+  width: 250px;
+  height: 36px;
+  font-size: 12.8px;
+  border-radius: 6px;
   outline: none;
   outline: none;
 }
 }
 
 
@@ -1179,9 +1194,6 @@ export default {
   box-sizing: border-box;
   box-sizing: border-box;
 }
 }
 
 
-.f_box_file_list > .f_box_file {
-}
-
 .f_box_file_allCheck {
 .f_box_file_allCheck {
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -1199,9 +1211,20 @@ export default {
   margin-right: 5px;
   margin-right: 5px;
 }
 }
 
 
-.dialog >>> .el-dialog__body {
+.canEditCss >>> .el-dialog__body {
   padding: 10px 20px;
   padding: 10px 20px;
 }
 }
+.canEditCss >>> .el-dialog__header{
+  background-color: rgb(251, 251, 252);
+  border-radius: 8px 8px 0 0;
+  font-family: Pingfang;
+  border-bottom: .5px rgb(244, 246, 248) solid;
+
+}
+.canEditCss >>> .el-dialog{
+  border-radius: 8px;
+  width: 500px !important;
+}
 
 
 .type_nav_box {
 .type_nav_box {
 }
 }
@@ -1470,16 +1493,7 @@ export default {
 .pageBox >>> .el-pagination__total{
 .pageBox >>> .el-pagination__total{
   margin-right: auto;
   margin-right: auto;
 }
 }
-.btnBh{
-  display: flex;
-  /* align-items: center; */
-  justify-content: center;
-  cursor: pointer;
-  /* height: 28px; */
-  padding: 4px 10px;
 
 
-  border-radius: 5px;
-}
 .btnBh:hover{
 .btnBh:hover{
   background: #F0F4FF;
   background: #F0F4FF;
 }
 }
@@ -1487,18 +1501,12 @@ export default {
   margin-right: 5px;
   margin-right: 5px;
   width: 17px;
   width: 17px;
 }
 }
-.btnBh2{
-  display: flex;
-  align-items: center;
-  justify-content: center;
-  cursor: pointer;
-  height: 28px;
-  padding: 0 10px;
-  border-radius: 5px;
-}
+
 .btnBh2 img{
 .btnBh2 img{
-  width: 14px;
+  width: 17px;
   margin-right: 5px;
   margin-right: 5px;
+  padding: 1.5px;
+  box-sizing: border-box;
 }
 }
 .btnBh2:hover{
 .btnBh2:hover{
   background: #FBEAE8;
   background: #FBEAE8;
@@ -1513,19 +1521,52 @@ export default {
     display: flex !important;
     display: flex !important;
     align-items: center !important;
     align-items: center !important;
 }
 }
+.perName{
+  flex-shrink: 0;
+  min-width: 30px;
+  max-width: 47px;
+  overflow: hidden;
+  white-space: nowrap;
+  text-overflow: ellipsis;
+}
+.btnBh2{
+  display: flex;
+  /* align-items: center; */
+  cursor: pointer;
+  padding: 5px 8px;
+  border-radius: 6px;
+  box-sizing: border-box;
+}
+.btnBh{
+  display: flex;
+  cursor: pointer;
+  border-radius: 6px;
+  padding: 5px 8px;
+}
+.canEditTit{
+  display: flex;
+  justify-content: flex-start;
+  align-items: center;
+}
+.canEditTit img{
+  width: 25px;
+  margin-right: 10px;
+}
 </style>
 </style>
 
 
 <style>
 <style>
 .custom-popover {
 .custom-popover {
-  min-width: 18px !important;
+  min-width: 70px !important;
   width: auto !important;
   width: auto !important;
-  padding: 8px;
+  padding: 8px 6px;
+  border-radius: 8px;
 }
 }
-.custom-popover2 {
+/* .custom-popover2 {
   min-width: 18px !important;
   min-width: 18px !important;
   width: auto !important;
   width: auto !important;
   padding: 8px;
   padding: 8px;
   top: 414px !important;
   top: 414px !important;
   text-align: center;
   text-align: center;
-}
+} */
+
 </style>
 </style>

+ 108 - 50
src/components/pages/knowledge/folderDetail.vue

@@ -9,6 +9,7 @@
         :folderid="folderid"
         :folderid="folderid"
         :moFolderid="moFolderid"
         :moFolderid="moFolderid"
         :data="data"
         :data="data"
+        @goCheckType="goCheckType"
       ></folderFileBoxVue>
       ></folderFileBoxVue>
     </div>
     </div>
 
 
@@ -18,22 +19,22 @@
           <div class="t_title">
           <div class="t_title">
             <img style="width: 20px;margin-right: 5px;" src="../../../assets/listfolder2.svg" alt="">
             <img style="width: 20px;margin-right: 5px;" src="../../../assets/listfolder2.svg" alt="">
             <el-tooltip class="item" effect="dark" :content="data.name" placement="top">
             <el-tooltip class="item" effect="dark" :content="data.name" placement="top">
-              <p>{{ data.name }}</p>    
+              <div class="perName">{{ data.name }}</div>    
             </el-tooltip>
             </el-tooltip>
 
 
           </div>
           </div>
-          <div style="margin-left: 6px;cursor: pointer;" @click="canEdit = true;" v-if="userid == data.userid && data.isMo == '2'">
+          <div style="margin-left: 6px;cursor: pointer;" @click="openCanEdit" v-if="userid == data.userid && data.isMo == '2'">
             <img style="width: 11px;" src="../../../assets/xiugai.svg" alt="">
             <img style="width: 11px;" src="../../../assets/xiugai.svg" alt="">
           </div>
           </div>
         </div>
         </div>
         
         
         <div class="t_btn">
         <div class="t_btn">
            <div v-if="data.isMo == '2'" @click="copyFolder">
            <div v-if="data.isMo == '2'" @click="copyFolder">
-            <img style="width: 16px;margin-right: 8px;" src="../../../assets/copyFlieG.svg" alt="">
+            <img style="height: 14px; margin-right: 8px;" src="../../../assets/copyFlieG2.svg" alt="">
             复制
             复制
            </div>
            </div>
            <div v-if="userid == data.userid && data.isMo == '2'"  @click="deleteFile(pid.split('/')[1])"">
            <div v-if="userid == data.userid && data.isMo == '2'"  @click="deleteFile(pid.split('/')[1])"">
-            <img style="width: 16px;margin-right: 8px;" src="../../../assets/delFlieG.svg" alt="">
+            <img style="width: 16px;margin-right: 8px;transform: scale(.9);" src="../../../assets/delFlieG.svg" alt="">
             删除
             删除
            </div>
            </div>
         </div>
         </div>
@@ -44,42 +45,48 @@
         </div>
         </div>
 
 
         <div 
         <div 
-        style="background-color: #E8EBF0;width: 100%;height: 1px;margin: 16px 0;"
+        style="height: 1px;border-bottom: 1px #E8EBF0 solid; margin: 16px 0;"
         v-if="check1.length || check2.length || check3.length"
         v-if="check1.length || check2.length || check3.length"
         ></div>
         ></div>
 
 
         <div 
         <div 
-        style="font-size: 12px;font-family: PingFang;color: #111824;height: 24px;line-height: 24px;"
+        style="font-size: 12px;font-family: PingFang;color: #111824;margin-bottom: 12px;font-weight: 600;"
         v-if="check1.length || check2.length || check3.length"
         v-if="check1.length || check2.length || check3.length"
         >标签</div>
         >标签</div>
         
         
         <div class="tag_box" v-if="data.userid == userid && data.isMo == '2'">
         <div class="tag_box" v-if="data.userid == userid && data.isMo == '2'">
           <div class="tag" v-loading="tagLoading1">
           <div class="tag" v-loading="tagLoading1">
 
 
-              <div class="tags" v-if="check1.length">
+              <div class="tags" v-if="check1.length || check2.length || check3.length">
                 <div  v-for="(item,index) in tagData1" :key="index+'a'">
                 <div  v-for="(item,index) in tagData1" :key="index+'a'">
-                    <el-tag v-if="check1.includes(item.id)">{{ TagList(item) }}</el-tag>
+                    <span style="background: #F0F4FF;color: #3370FF;" v-if="check1.includes(item.id)">{{ TagList(item) }}</span>
                 </div>
                 </div>
-              </div>
-              <div class="tags" v-if="check2.length">
                 <div  v-for="(item,index) in tagData2" :key="index+'b'">
                 <div  v-for="(item,index) in tagData2" :key="index+'b'">
-                      <el-tag v-if="check2.includes(item.id)" type="info">{{ TagList2(item) }}</el-tag>
+                  <span style="background: #EDFBF3;color: #039855;" v-if="check2.includes(item.id)">{{ TagList2(item) }}</span>
                 </div>
                 </div>
-              </div>
-
-              <div class="tags" v-if="check3.length">
                 <div v-for="(item,index) in tagData3" :key="index+'c'">
                 <div v-for="(item,index) in tagData3" :key="index+'c'">
-                    <el-tag v-if="check3.includes(item.name)" type="warning">{{ TagList3(item) }}</el-tag>
+                  <span style="background: #FFFAEB;color: #DC6803;"  v-if="check3.includes(item.name)">{{ TagList3(item) }}</span>
                 </div>
                 </div>
               </div>
               </div>
+              <!-- <div class="tags" v-if="check2.length">
+               
+              </div>
+
+              <div class="tags" v-if="check3.length">
+                
+              </div> -->
 
 
           </div>
           </div>
-        <div style="background-color: #E8EBF0;width: 100%;height: 1px;margin: 16px 0;"></div>
-            <div style="font-size: 12px;font-family: PingFang;color: #111824;height: 24px;line-height: 24px;">权限</div>
+        <div style="height: 1;border-bottom: 1px #E8EBF0 solid;margin: 16px 0;"></div>
+
+
+        <div style="font-size: 12px;font-family: PingFang;color: #111824;margin-bottom: 12px;font-weight: 600;">
+          权限管理
+        </div>
 
 
             <div class="flieTag">
             <div class="flieTag">
               <div v-if="data.juri == 1">
               <div v-if="data.juri == 1">
-                <img src="../../../assets/siyou.svg" alt="">
+                <img src="../../../assets/siyou1.svg" alt="">
                 <span>私有</span>
                 <span>私有</span>
               </div>
               </div>
               <div v-if="data.juri == 2">
               <div v-if="data.juri == 2">
@@ -123,52 +130,45 @@
             <span>编辑</span>
             <span>编辑</span>
           </div>
           </div>
 
 
+          <div class="canEditFileName">文件名</div>
           <el-input v-model="fileDetail.name" placeholder="输入文件夹名字"></el-input>
           <el-input v-model="fileDetail.name" placeholder="输入文件夹名字"></el-input>
 
 
+          <div class="canEditFileName">描述</div>
           <el-input
           <el-input
             type="textarea"
             type="textarea"
-            style="margin: 10px 0;"
             :autosize="{ minRows: 2, maxRows: 4}"
             :autosize="{ minRows: 2, maxRows: 4}"
             placeholder="输入文件夹描述"
             placeholder="输入文件夹描述"
             v-model="fileDetail.detail">
             v-model="fileDetail.detail">
           </el-input>
           </el-input>
 
 
+          <div class="canEditFileName">学科标签</div>
           <selectTag
           <selectTag
             v-loading="tagLoading1"
             v-loading="tagLoading1"
             v-model="fileDetailCheck1"
             v-model="fileDetailCheck1"
             :options="tagData1"
             :options="tagData1"
-            :placeholder="'选择学科标签'"
-            style="width: 70%"
+            :placeholder="'选择学科标签'"
+            style="width: 65%"
           />
           />
           <!-- @change="updateFolder()" -->
           <!-- @change="updateFolder()" -->
-            
+          
+          <div class="canEditFileName">年级标签</div>
           <selectTag
           <selectTag
             v-loading="tagLoading2"
             v-loading="tagLoading2"
             v-model="fileDetailCheck2"
             v-model="fileDetailCheck2"
             :options="tagData2"
             :options="tagData2"
-            :placeholder="'选择年级标签'"
-            style="width: 70%; margin: 10px 0;"
+            :placeholder="'选择年级标签'"
+            style="width: 65%; "
             clearable
             clearable
           />
           />
           <!-- @change="updateFolder()" -->
           <!-- @change="updateFolder()" -->
-          <!-- <selectTag2
-              v-loading="tagLoading3"
-              v-model="check3"
-              :options="tagData3"
-              :placeholder="'自定义标签'"
-              style="width: 100%; margin-top: 10px;"
-              @change="handleTagChange"
-              allow-create
-              filterable
-              clearable
-              @deleteTag="deleteTag"
-            /> -->
+
+          <div class="canEditFileName">自定义标签:</div>
           <selectTag2
           <selectTag2
             v-loading="tagLoading3"
             v-loading="tagLoading3"
             v-model="fileDetailCheck3"
             v-model="fileDetailCheck3"
             :options="tagData3"
             :options="tagData3"
             :placeholder="'自定义标签'"
             :placeholder="'自定义标签'"
-            style="width: 70%; margin-top: 10px;"
+            style="width: 65%;"
             allow-create
             allow-create
             filterable
             filterable
             clearable
             clearable
@@ -176,11 +176,11 @@
             @deleteTag="deleteTag"
             @deleteTag="deleteTag"
           />
           />
           <!-- @change="handleTagChange" -->
           <!-- @change="handleTagChange" -->
+          <div class="canEditFileName" style="margin-bottom: 9px;">权限管理</div>
           
           
-          <div class="tag" style="margin-top: 10px;display: flex;align-items: center;">
-            <div class="tag_title">权限管理:</div>
+          <div class="tag" >
               <div class="tag_check">
               <div class="tag_check">
-                <el-radio-group v-model="fileDetail.juri" >
+                <el-radio-group  v-model="fileDetail.juri" >
                   <el-radio label="1">私有</el-radio>
                   <el-radio label="1">私有</el-radio>
                   <el-radio label="2">组织内</el-radio>
                   <el-radio label="2">组织内</el-radio>
                   <el-radio label="3">全部</el-radio>
                   <el-radio label="3">全部</el-radio>
@@ -328,6 +328,17 @@ export default {
     this.getData();
     this.getData();
   },
   },
   methods: {
   methods: {
+    openCanEdit(){
+      this.canEdit = true;
+      
+      this.fileDetail = JSON.parse(JSON.stringify(this.data))
+      this.fileDetailCheck1 = JSON.parse(JSON.stringify(this.check1))
+      this.fileDetailCheck2 = JSON.parse(JSON.stringify(this.check2))
+      this.fileDetailCheck3 = JSON.parse(JSON.stringify(this.check3))
+      
+      
+      
+    },
     modifyDetail(){
     modifyDetail(){
       if (!this.fileDetail.name.trim()) {
       if (!this.fileDetail.name.trim()) {
         this.$message.error("文件夹名字不能为空");
         this.$message.error("文件夹名字不能为空");
@@ -460,6 +471,9 @@ export default {
         })
         })
         .catch(() => {});
         .catch(() => {});
     },
     },
+    goCheckType(val){
+      this.$emit("checkType", val);
+    },
     copyFolder() {
     copyFolder() {
       this.isLoading = true;
       this.isLoading = true;
       let params = [
       let params = [
@@ -548,7 +562,7 @@ export default {
 
 
       // console.log("Selected tags:", uniqueTags);
       // console.log("Selected tags:", uniqueTags);
       // console.log("Missing tags:", missingTags);
       // console.log("Missing tags:", missingTags);
-      this.check3 = uniqueTags;
+      this.fileDetailCheck3 = uniqueTags;
       missingTags.forEach(tag => this.addTag(tag));
       missingTags.forEach(tag => this.addTag(tag));
       // this.updateFolder();
       // this.updateFolder();
     },
     },
@@ -632,14 +646,14 @@ export default {
   display: flex;
   display: flex;
   font-weight: 600;
   font-weight: 600;
   font-size: 16px;
   font-size: 16px;
-  width: 180px;
+  /* width: 180px; */
   color: #111842;
   color: #111842;
 }
 }
-.t_title p{
+/* .t_title p{
   overflow: hidden;
   overflow: hidden;
   white-space: nowrap;
   white-space: nowrap;
   text-overflow: ellipsis;
   text-overflow: ellipsis;
-}
+} */
 .t_btn{
 .t_btn{
   display: flex;
   display: flex;
   gap: 10px;
   gap: 10px;
@@ -658,6 +672,7 @@ export default {
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
+  border: 1px #E8EBF0 solid;
 }
 }
 .detail_box{
 .detail_box{
   font-size: 12.8px;
   font-size: 12.8px;
@@ -675,15 +690,21 @@ export default {
   display: flex;
   display: flex;
   flex-wrap: wrap;
   flex-wrap: wrap;
   align-items: center;
   align-items: center;
+  font-family: PingFang;
 }
 }
 .tags div {
 .tags div {
   margin-bottom: 10px;
   margin-bottom: 10px;
 }
 }
-.tags >>> .el-tag{
-    font-size: 12px;
-    margin-right: 10px;
-    height: 20px;
-    line-height: 20px;
+.tags >>> span{
+   
+    height: 24.38px;
+    line-height: 24.38px; 
+    padding: 4px 10px;
+    border-radius: 6px;
+    border: none;
+    box-sizing: border-box;
+    font-size: 12.8px;
+    margin-right: 8px;
 }
 }
 
 
 
 
@@ -692,13 +713,22 @@ export default {
   font-family: PingFang SC;
   font-family: PingFang SC;
   /* margin-top: 8px; */
   /* margin-top: 8px; */
   color: #667085;
   color: #667085;
+  background-color: #F4F4F7;
+  height: 55px;
+  padding: 6px;
+  border-radius: 8px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  font-size: 12.8px;
+  box-sizing: border-box;
 }
 }
 .flieTag div{
 .flieTag div{
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
 }
 }
 .flieTag img{
 .flieTag img{
-  width: 13px;
+  width: 14px;
   margin-right: 5px;
   margin-right: 5px;
 }
 }
 
 
@@ -724,6 +754,7 @@ export default {
   display: flex;
   display: flex;
   /* flex-direction: column; */
   /* flex-direction: column; */
   flex-wrap: wrap;
   flex-wrap: wrap;
+
 }
 }
 .tag_title div{
 .tag_title div{
   display: flex;
   display: flex;
@@ -782,6 +813,16 @@ export default {
   border-radius: 8px;
   border-radius: 8px;
   width: 500px !important;
   width: 500px !important;
 }
 }
+.canEditCss >>> .el-dialog__body{
+  padding-top: 0;
+  padding-bottom: 10px !important;
+}
+.canEditCss >>> .el-dialog__header{
+  background-color: rgb(251, 251, 252);
+  border-radius: 8px 8px 0 0;
+  font-family: Pingfang;
+  border-bottom: .5px rgb(244, 246, 248) solid;
+}
 .canEditTit{
 .canEditTit{
   display: flex;
   display: flex;
   justify-content: flex-start;
   justify-content: flex-start;
@@ -791,4 +832,21 @@ export default {
   width: 25px;
   width: 25px;
   margin-right: 10px;
   margin-right: 10px;
 }
 }
+.canEditFileName{
+  font-size: 14px;
+  color: #111824;
+  font-family: PingFang;
+  height: 21px;
+  line-height: 21px;
+  padding-top: 16px;
+  margin-bottom: 4px;
+}
+.perName{
+  flex-shrink: 0;
+  min-width: 50px;
+  max-width: 120px;
+  overflow: hidden;
+  white-space: nowrap;
+  text-overflow: ellipsis;
+}
 </style>
 </style>

+ 71 - 39
src/components/pages/knowledge/folderFileBox.vue

@@ -2,7 +2,11 @@
   <div class="f_box" @dragover.prevent @drop="handleDrop">
   <div class="f_box" @dragover.prevent @drop="handleDrop">
     <div class="f_box_top">
     <div class="f_box_top">
       <div class="f_box_top_left">
       <div class="f_box_top_left">
-        <div class="f_box_top_title">文件</div>
+        <el-breadcrumb separator="/">
+          <el-breadcrumb-item style="color: #000;font-weight: 600;"><span @click="goBackPage">根目录</span></el-breadcrumb-item>
+          <el-breadcrumb-item>{{ data.name }}</el-breadcrumb-item>
+        </el-breadcrumb>
+      <!-- <div class="f_box_top_title">文件</div> -->
       </div>
       </div>
       <div class="f_box_top_right">
       <div class="f_box_top_right">
 
 
@@ -17,7 +21,9 @@
         </div>
         </div>
 
 
         <el-button type="primary" size="small" @click="serchFile"
         <el-button type="primary" size="small" @click="serchFile"
-          >刷新</el-button
+          >
+          <img style="vertical-align: middle;transform: scale(1.1);padding-bottom: 2px;box-sizing: border-box;" src="../../../assets/shuax.svg" alt="">
+          刷新</el-button
         >
         >
         <el-button type="primary" icon="el-icon-plus" size="small" @click="addImg($event)"
         <el-button type="primary" icon="el-icon-plus" size="small" @click="addImg($event)"
           >上传文件
           >上传文件
@@ -33,16 +39,22 @@
           size="small"
           size="small"
           @click="openG"
           @click="openG"
           v-if="userid == data.userid && data.isMo == '2'"
           v-if="userid == data.userid && data.isMo == '2'"
-          >关联文件</el-button
+          >
+          <img style="vertical-align: middle;" src="../../../assets/ETL.svg" alt="">
+          关联文件</el-button
         >
         >
 
 
-        <el-button type="primary" v-if="checkArray.length" size="small" @click="batchRemove"
-          >移除</el-button
+        <el-button type="primary"  v-if="checkArray.length" size="small" @click="batchRemove"
+          >
+          <img style="vertical-align: middle;padding-bottom: 3px;" src="../../../assets/yichuBtn.svg" alt="">
+          移除</el-button
         >
         >
-        <el-button type="danger" v-if="checkArray.length" size="small" @click="batchDelete"
-          >删除</el-button
+        <el-button type="danger" style="background: #F56C6C;" v-if="checkArray.length" size="small" @click="batchDelete"
+          >
+          <img style="vertical-align: middle;padding-bottom: 3px;" src="../../../assets/delBtn.svg" alt="">
+          删除</el-button
         >
         >
-        <span v-if="checkArray.length" style="margin-left: 10px;color: #b0b0b0;font-size: 14px;">已选文件{{checkArray.length}}个</span>
+        <div v-if="checkArray.length" style="margin-left: 12px;color: #b0b0b0;font-size: 14px;flex-shrink: 0;line-height: 35px;">已选文件{{checkArray.length}}个</div>
 
 
         <!-- <div class="btn" @click="serchFile">刷新</div>
         <!-- <div class="btn" @click="serchFile">刷新</div>
         <div class="btn" @click="addImg($event)">
         <div class="btn" @click="addImg($event)">
@@ -88,7 +100,7 @@
             <div style="height: 50px;line-height: 50px;width: 47.4px;display: flex;justify-content: center;">
             <div style="height: 50px;line-height: 50px;width: 47.4px;display: flex;justify-content: center;">
               <img style="width: 100%;" src="../../../assets/flieKong.svg" alt="">
               <img style="width: 100%;" src="../../../assets/flieKong.svg" alt="">
             </div>
             </div>
-            <div style="height: 50px;line-height: 40px;">数据集空空如也</div>
+            <div style="height: 50px;line-height: 40px;">暂无数据内容...</div>
            
            
           </div>
           </div>
         </template>
         </template>
@@ -242,7 +254,6 @@
       <el-pagination
       <el-pagination
         class="pageBox"
         class="pageBox"
         style="margin-top: 10px"
         style="margin-top: 10px"
-        background
         layout="total, prev, pager, next"
         layout="total, prev, pager, next"
         :page-size="limit"
         :page-size="limit"
         :total="total"
         :total="total"
@@ -413,6 +424,9 @@ export default {
     }
     }
   },
   },
   methods: {
   methods: {
+    goBackPage(){
+      this.$emit("goCheckType", this.pid.split("/")[0]);
+    },
     handleCurrentChange(val) {
     handleCurrentChange(val) {
       this.page = val;
       this.page = val;
       this.getData();
       this.getData();
@@ -772,22 +786,22 @@ export default {
 
 
 .f_box_top_right {
 .f_box_top_right {
   margin-left: auto;
   margin-left: auto;
-  max-width: calc(100% - 280px);
+  /* max-width: calc(100% - 280px); */
   overflow: hidden;
   overflow: hidden;
   display: flex;
   display: flex;
-  align-items: center;
+  /* align-items: center; */
 }
 }
 
 
 .f_box_top_right > .input {
 .f_box_top_right > .input {
   position: relative;
   position: relative;
-  width: 280px;
   height: 40px;
   height: 40px;
-  margin-right: 10px;
 }
 }
 .f_box_top_right >>> .el-button{
 .f_box_top_right >>> .el-button{
-  height: 38px !important;
-  font-size: 14px;
+  height: 35px !important;
+  font-size: 12.8px;
   background-color: #3370FF;
   background-color: #3370FF;
+  border-radius: 6px;
+  margin-left: 12px;
 }
 }
 .f_box_top_right >>>.el-button--primary:focus,.f_box_top_right>>> .el-button--primary:hover{
 .f_box_top_right >>>.el-button--primary:focus,.f_box_top_right>>> .el-button--primary:hover{
   filter: brightness(120%);
   filter: brightness(120%);
@@ -807,6 +821,10 @@ export default {
   padding: 0 15px 0 45px;
   padding: 0 15px 0 45px;
   box-sizing: border-box;
   box-sizing: border-box;
   font-size: 14px;
   font-size: 14px;
+  width: 250px;
+  height: 36px;
+  font-size: 12.8px;
+  border-radius: 6px;
   outline: none;
   outline: none;
 }
 }
 
 
@@ -1014,6 +1032,10 @@ export default {
 .f_box_file_list > .f_box_file {
 .f_box_file_list > .f_box_file {
 }
 }
 
 
+.f_box_file_list >>> .el-table-column--selection .cell{
+    display: flex !important;
+    align-items: center !important;
+}
 .f_box_file_allCheck {
 .f_box_file_allCheck {
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -1031,6 +1053,9 @@ export default {
   margin-right: 5px;
   margin-right: 5px;
 }
 }
 
 
+.el-dialogClass>>>.el-dialog{
+  border-radius: 8px;
+}
 .dialog >>> .el-dialog__body {
 .dialog >>> .el-dialog__body {
   padding: 10px 20px;
   padding: 10px 20px;
 }
 }
@@ -1245,17 +1270,12 @@ export default {
 .btnBh img{
 .btnBh img{
   margin-right: 5px;
   margin-right: 5px;
 } */
 } */
-.btnBh2{
-  display: flex;
-  align-items: center;
-  justify-content: center;
-  cursor: pointer;
-  height: 28px;
-  border-radius: 5px;
-}
+
 .btnBh2 img{
 .btnBh2 img{
-  width: 14px;
+  width: 17px;
   margin-right: 5px;
   margin-right: 5px;
+  padding: 1.5px;
+  box-sizing: border-box;
 }
 }
 .btnBh2:hover{
 .btnBh2:hover{
   background: #FBEAE8;
   background: #FBEAE8;
@@ -1285,20 +1305,36 @@ export default {
 .pageBox >>> .el-pagination__total{
 .pageBox >>> .el-pagination__total{
   margin-right: auto;
   margin-right: auto;
 }
 }
+.btnBh2{
+  display: flex;
+  align-items: center;
+  cursor: pointer;
+  padding: 5px 8px;
+  border-radius: 6px;
+  box-sizing: border-box;
+}
+.btnBh{
+  display: flex;
+  cursor: pointer;
+  border-radius: 6px;
+  padding: 5px 8px;
+}
 </style>
 </style>
+
 <style>
 <style>
 .custom-popover {
 .custom-popover {
-  min-width: 88px !important;
+  min-width: 70px !important;
   width: auto !important;
   width: auto !important;
-  padding: 8px;
+  padding: 8px 10px;
+  border-radius: 8px;
 }
 }
-.custom-popover2 {
+/* .custom-popover2 {
   min-width: 88px !important;
   min-width: 88px !important;
   width: auto !important;
   width: auto !important;
   padding: 8px;
   padding: 8px;
   top: 414px !important;
   top: 414px !important;
   text-align: center;
   text-align: center;
-}
+} */
 .BtnH >>> .el-button{
 .BtnH >>> .el-button{
   padding: 5px !important;
   padding: 5px !important;
   width: 30px !important;
   width: 30px !important;
@@ -1352,8 +1388,8 @@ export default {
   justify-content: center;
   justify-content: center;
   cursor: pointer;
   cursor: pointer;
   /* height: 28px; */
   /* height: 28px; */
-  padding: 4px 10px;
-  border-radius: 5px;
+  border-radius: 6px;
+  padding: 6px 9px;
 }
 }
 .btnBh:hover{
 .btnBh:hover{
   background: #F0F4FF;
   background: #F0F4FF;
@@ -1401,13 +1437,9 @@ export default {
   margin-top: .5rem;
   margin-top: .5rem;
   color: #667085;
   color: #667085;
 }
 }
-
-</style>
-
-<style>
-.custom-popover {
-  min-width: 88px !important;
-  width: auto !important;
-  padding: 8px;
+.list_file_box >>> .el-table-column--selection .cell{
+    display: flex !important;
+    align-items: center !important;
 }
 }
 </style>
 </style>
+

+ 10 - 6
src/components/pages/knowledge/index.vue

@@ -9,9 +9,11 @@
       <div class="nav">
       <div class="nav">
         
         
         <div class="nav_b" v-for="(item, index) in typeArray" :key="index">
         <div class="nav_b" v-for="(item, index) in typeArray" :key="index">
-          <div class="nav_box" style="display: flex;justify-content: space-between;" :class="{ open: item.open, active2: pid.split('/')[0] == item.id }" @click="checkType(item.id)">
+          <div class="nav_box" style="display: flex;justify-content: space-between;"
+           :class="{ open: item.open, active2: pid.split('/')[0] == item.id }"
+            @click="checkType(item.id)">
             <el-tooltip :content="item.name" placement="top" effect="dark">
             <el-tooltip :content="item.name" placement="top" effect="dark">
-              <span class="name">{{ item.name }}</span>
+              <span class="name" style="color: #667085 !important;">{{ item.name }}</span>
             </el-tooltip>
             </el-tooltip>
             <span class="icon"  :class="{ haveL: item.child.length }" @click.stop="typeOpen(index)"></span>
             <span class="icon"  :class="{ haveL: item.child.length }" @click.stop="typeOpen(index)"></span>
 
 
@@ -206,17 +208,18 @@ export default {
   background: #F4F4F7;
   background: #F4F4F7;
   box-sizing: border-box;
   box-sizing: border-box;
   display: flex;
   display: flex;
-  padding:10px 8px;
+  /* padding:10px 8px; */
 }
 }
 
 
 .l_type_box {
 .l_type_box {
   width: 200px;
   width: 200px;
   min-width: 200px;
   min-width: 200px;
   height: 100%;
   height: 100%;
-  background: #fff;
+  /* background: #fff; */
   padding: 10px;
   padding: 10px;
   box-sizing: border-box;
   box-sizing: border-box;
   border-radius: 5px;
   border-radius: 5px;
+  border-right: .5px #E2E8F0 solid;
   /* border: 1px #ddd2d2 solid; */
   /* border: 1px #ddd2d2 solid; */
 }
 }
 
 
@@ -360,7 +363,7 @@ export default {
 
 
 .l_type_box>.nav>.nav_b>.nav_box.active2>.haveL {
 .l_type_box>.nav>.nav_b>.nav_box.active2>.haveL {
   transform: rotate(90deg) ;
   transform: rotate(90deg) ;
-  background-image: url('../../../assets/icon/sourceFile/icon_arrow_active.png');
+  background-image: url('../../../assets/xjt.svg');
 }
 }
 
 
 
 
@@ -546,12 +549,13 @@ export default {
 .l_file_box {
 .l_file_box {
   /* width: calc(100% - 320px); */
   /* width: calc(100% - 320px); */
   flex: 1;
   flex: 1;
+
   /* margin-left: 20px; */
   /* margin-left: 20px; */
   background: #F4F4F7;
   background: #F4F4F7;
   height: 100%;
   height: 100%;
   border-radius: 5px;
   border-radius: 5px;
   overflow: auto;
   overflow: auto;
-  padding: 0px 12px 0px 20px;
+  padding: 15px 12px 0px 20px;
   box-sizing: border-box;
   box-sizing: border-box;
 }
 }
 
 

Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott