浏览代码

首页的最近收到文件更多组件完成,预览界面样式更改

yxc 2 年之前
父节点
当前提交
e710efd243

+ 7 - 2
src/router/index.js

@@ -92,9 +92,14 @@ export const constantRoutes = [{
     path: '/home',
     component: () => import('@/views1/HomeView.vue'),
     hidden: true,
-    children: [{
+    children: [
+      {
         path: "/home/page",
-        component: () => import('@/views1/Page/PageView.vue')
+        component: () => import('@/views1/Page/PageView.vue'),
+      },
+      {
+        path: "/home/page/more",
+        component: () => import('@/views1/Page/More/MoreView.vue'),
       },
       {
         path: "/home/retrieval",

+ 28 - 12
src/views1/File/Individual/IndividualView.vue

@@ -233,12 +233,12 @@
           <audio :src="aud" controls v-if="aud1"></audio>
 
           <div class="image-container" v-if="img1">
-            <el-image :src="imgg" ref="imageRef" style="max-width: 100%" />
+            <el-image :src="imgg" ref="imageRef" style="max-width: 100%" @mousewheel.prevent="gunlun" />
             <el-button-group>
-              <el-button icon="el-icon-refresh" @click="rotate(-90)"></el-button>
-              <el-button icon="el-icon-refresh-right" @click="rotate(90)"></el-button>
-              <el-button icon="el-icon-zoom-in" @click="scale(0.1)"></el-button>
-              <el-button icon="el-icon-zoom-out" @click="scale(-0.1)"></el-button>
+              <el-button icon="el-icon-refresh-left" @click="rotate(-90)" title="向左旋转"></el-button>
+              <el-button icon="el-icon-refresh-right" @click="rotate(90)" title="向右旋转"></el-button>
+              <el-button icon="el-icon-zoom-in" @click="scale(0.1)" title="放大"></el-button>
+              <el-button icon="el-icon-zoom-out" @click="scale(-0.1)" title="缩小"></el-button>
             </el-button-group>
           </div>
           <el-button class="gb" icon="el-icon-close" circle @click="gb" />
@@ -393,13 +393,29 @@
       },
     },
     methods: {
-      //预览图片的缩放
+   // 滚轮滑动放大缩小
+      gunlun(e) {
+        const image = this.$refs.imageRef.$el.querySelector("img");   
+        if (e.deltaY > 0) {
+        // console.log("鼠标向下滚动,图片缩小");
+        this.scalePercentage -= 0.1;
+        image.style.transform = `scale(${this.scalePercentage})`;
+      } else {
+        // console.log("鼠标向上滚动,图片放大");
+        this.scalePercentage += 0.1;
+        image.style.transform = `scale(${this.scalePercentage})`;
+      }
+      },
+
+
+      //预览图片的旋转
       rotate(angle) {
         this.rotationAngle += angle;
         const image = this.$refs.imageRef.$el.querySelector("img");
         image.style.transform = `rotate(${this.rotationAngle}deg)`;
+        console.log( image.style.transform);
       },
-      //预览图片的旋转
+      //预览图片的缩放
       scale(delta) {
         this.scalePercentage += delta;
         const image = this.$refs.imageRef.$el.querySelector("img");
@@ -523,7 +539,7 @@
 
       //预览
       handlePreview(row) {
-        console.log(row);
+        // console.log(row);
         // console.log( this.$route.meta.title);
         // row.isEdit = false;
         // this.$tab.openPage(
@@ -892,13 +908,13 @@
     }
     //预览弹窗
     .dhk {
-      width: calc(100vw * (1500 / 1920));
+      width: calc(100vw * (1200 / 1920));
       height: calc(100vh * (850 / 1080));
       // background: salmon;
       background: #0F1540FF;
       position: absolute;
       top: 10%;
-      left: 10%;
+      left: 20%;
       z-index: 99;
       display: flex;
       justify-content: center;
@@ -922,8 +938,8 @@
 
       .el-button-group {
         position: absolute;
-        top: 10%;
-        right: 1%;
+        bottom: 0;
+        left: 35%;
       }
     }
   }

+ 26 - 12
src/views1/File/Part/PartView.vue

@@ -348,12 +348,12 @@
        <audio :src="aud" controls v-if="aud1"></audio>
 
        <div class="image-container" v-if="img1">
-        <el-image :src="imgg" ref="imageRef" style="max-width: 100%"/>
+        <el-image :src="imgg" ref="imageRef" style="max-width: 100%" @mousewheel.prevent="gunlun" />
         <el-button-group>
-      <el-button icon="el-icon-refresh" @click="rotate(-90)"></el-button>
-      <el-button icon="el-icon-refresh-right" @click="rotate(90)"></el-button>
-      <el-button icon="el-icon-zoom-in" @click="scale(0.1)"></el-button>
-      <el-button icon="el-icon-zoom-out" @click="scale(-0.1)"></el-button>
+          <el-button icon="el-icon-refresh-left" @click="rotate(-90)" title="向左旋转"></el-button>
+              <el-button icon="el-icon-refresh-right" @click="rotate(90)" title="向右旋转"></el-button>
+              <el-button icon="el-icon-zoom-in" @click="scale(0.1)" title="放大"></el-button>
+              <el-button icon="el-icon-zoom-out" @click="scale(-0.1)" title="缩小"></el-button>
     </el-button-group>
   </div>
         <el-button class="gb" icon="el-icon-close" circle @click="gb" />
@@ -497,6 +497,21 @@ export default {
     },
   },
   methods: {
+     // 滚轮滑动放大缩小
+     gunlun(e) {
+        const image = this.$refs.imageRef.$el.querySelector("img");   
+        if (e.deltaY > 0) {
+        // console.log("鼠标向下滚动,图片缩小");
+        this.scalePercentage -= 0.1;
+        image.style.transform = `scale(${this.scalePercentage})`;
+      } else {
+        // console.log("鼠标向上滚动,图片放大");
+        this.scalePercentage += 0.1;
+        image.style.transform = `scale(${this.scalePercentage})`;
+      }
+      },
+
+
       //预览图片的缩放
       rotate(angle) {
       this.rotationAngle += angle;
@@ -512,7 +527,7 @@ export default {
 
     // 预览关闭
     gb(){
-    this.a=false;
+    this.preview=false;
     },
     //选择标签关闭
     handleClose(tag) {
@@ -836,7 +851,6 @@ export default {
     },
     /** 提交按钮 */
     submitForm() {
-      // console.log(this.form);
       // console.log(this.dynamicTags);
       this.$refs["form"].validate((valid) => {
         if (valid) {
@@ -1025,11 +1039,11 @@ export default {
      width: calc(100vw * (960 / 1920));
      height: calc(100vh * (720 / 1080)); 
     }
-     .el-button-group {
-      position: absolute;
-      top: 10%;
-      right: 1%;
-    }
+    .el-button-group {
+        position: absolute;
+        bottom: 0;
+        left: 35%;
+      }
   }
 }
 //标签按钮

+ 22 - 7
src/views1/File/Publi/PublicView.vue

@@ -325,12 +325,12 @@
        <audio :src="aud" controls v-if="aud1"></audio>
 
        <div class="image-container" v-if="img1">
-        <el-image :src="imgg" ref="imageRef" style="max-width: 100%"/>
+        <el-image :src="imgg" ref="imageRef" style="max-width: 100%" @mousewheel.prevent="gunlun" />
         <el-button-group>
-      <el-button icon="el-icon-refresh" @click="rotate(-90)"></el-button>
-      <el-button icon="el-icon-refresh-right" @click="rotate(90)"></el-button>
-      <el-button icon="el-icon-zoom-in" @click="scale(0.1)"></el-button>
-      <el-button icon="el-icon-zoom-out" @click="scale(-0.1)"></el-button>
+          <el-button icon="el-icon-refresh-left" @click="rotate(-90)" title="向左旋转"></el-button>
+              <el-button icon="el-icon-refresh-right" @click="rotate(90)" title="向右旋转"></el-button>
+              <el-button icon="el-icon-zoom-in" @click="scale(0.1)" title="放大"></el-button>
+              <el-button icon="el-icon-zoom-out" @click="scale(-0.1)" title="缩小"></el-button>
     </el-button-group>
   </div>
         <el-button class="gb" icon="el-icon-close" circle @click="gb" />
@@ -470,6 +470,21 @@ export default {
     },
   },
   methods: {
+    // 滚轮滑动放大缩小
+    gunlun(e) {
+        const image = this.$refs.imageRef.$el.querySelector("img");   
+        if (e.deltaY > 0) {
+        // console.log("鼠标向下滚动,图片缩小");
+        this.scalePercentage -= 0.1;
+        image.style.transform = `scale(${this.scalePercentage})`;
+      } else {
+        // console.log("鼠标向上滚动,图片放大");
+        this.scalePercentage += 0.1;
+        image.style.transform = `scale(${this.scalePercentage})`;
+      }
+      },
+
+
     //预览图片的缩放
     rotate(angle) {
       this.rotationAngle += angle;
@@ -971,8 +986,8 @@ export default {
 
       .el-button-group {
         position: absolute;
-        top: 10%;
-        right: 1%;
+        bottom: 0;
+        left: 35%;
       }
     }
 }

+ 2 - 2
src/views1/LoginView.vue

@@ -21,7 +21,7 @@
               v-model="loginForm.username"
               type="text"
               auto-complete="off"
-              placeholder="请输入手机号/邮箱"
+              placeholder="请输入用户名"
             >
               <svg-icon
                 slot="prefix"
@@ -110,7 +110,7 @@ export default {
       },
       loginRules: {
         username: [
-          { required: true, trigger: "blur", message: "请输入您的账号" },
+          { required: true, trigger: "blur", message: "请输入您的用户名" },
         ],
         password: [
           { required: true, trigger: "blur", message: "请输入您的密码" },

+ 938 - 0
src/views1/Page/More/MoreView.vue

@@ -0,0 +1,938 @@
+<template>
+  <div class="containe">
+    <div class="main">
+      <div class="app-container">
+        <el-row :gutter="20">
+          <!--文件数据-->
+          <el-col :span="20" :xs="24" class="main-right">
+            <p>分享给我的文档</p>
+            <el-form
+              :model="queryParams"
+              ref="queryForm"
+              size="small"
+              :inline="true"
+              v-show="showSearch"
+              label-width="68px"
+              class="main-right-top"
+            >
+              <el-form-item label="文件名称" prop="docName">
+                <el-input
+                  v-model="queryParams.docName"
+                  placeholder="请输入文件名称"
+                  clearable
+                  @keyup.enter.native="handleQuery"
+                />
+              </el-form-item>
+              <el-form-item>
+                <el-button
+                  type="primary"
+                  icon="el-icon-search"
+                  size="mini"
+                  @click="handleQuery"
+                  >搜索</el-button
+                >
+                <el-button
+                  icon="el-icon-refresh"
+                  size="mini"
+                  @click="resetQuery"
+                  class="reset1"
+                  >重置</el-button
+                >
+              </el-form-item>
+            </el-form>
+
+            <el-table
+              v-loading="loading"
+              :data="tableData1"
+              @selection-change="handleSelectionChange"
+              class="main-right-table"
+              height="calc(100vh * (700 / 1080))"
+              align="left"
+              :header-cell-style="{ 'text-align': 'center' }"
+            >
+              <el-table-column type="selection" width="55" align="center" />
+              <el-table-column label="文件名称" align="left" prop="docName" />
+              <el-table-column
+                label="发件人"
+                align="center"
+                prop="user"
+                width="100"
+              />
+              <el-table-column
+                label="收到时间"
+                align="center"
+                prop="createTime"
+              />
+              <el-table-column label="文件类型" align="center" prop="docType" />
+              <el-table-column
+                label="机密"
+                align="center"
+                prop="isSecret"
+                width="90"
+              />
+              <el-table-column
+                label="标签"
+                align="center"
+                prop="tagName"
+                width="250"
+              >
+                <template slot-scope="scope">
+                  <div v-if="scope.row.tagList != []">
+                    <el-tag v-for="item in scope.row.tagList" :key="item.tagId">
+                      {{ item.tagName }}
+                    </el-tag>
+                  </div>
+                </template>
+              </el-table-column>
+              <el-table-column
+                label="操作"
+                align="center"
+                class-name="small-padding fixed-width"
+              >
+                <template slot-scope="scope">
+                  <el-button
+                    size="mini"
+                    type="text"
+                    icon="el-icon-view"
+                    @click="isSecretRole(scope.row)"
+                    >预览</el-button
+                  >
+                </template>
+              </el-table-column>
+            </el-table>
+
+            <pagination
+              v-show="total > 0"
+              :total="total"
+              :page.sync="queryParams.pageNum"
+              :limit.sync="queryParams.pageSize"
+              @pagination="getList"
+            />
+          </el-col>
+        </el-row>
+
+        <!-- 添加或修改文件基本信息对话框 -->
+        <el-dialog
+          :title="title"
+          :visible.sync="open"
+          width="500px"
+          append-to-body
+          custom-class="el-dialog5"
+        >
+          <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+            <el-form-item label="" prop="docPath">
+              <!-- <el-input v-model="form.docPath" placeholder="请输入文件路径" /> -->
+              <file-upload v-model="form.docPath" />
+            </el-form-item>
+            <el-form-item label="文件目录" prop="dirId">
+              <treeselect
+                v-model="form.dirId"
+                :options="dirList"
+                :normalizer="normalizer"
+                placeholder="请选择文件目录"
+              />
+            </el-form-item>
+            <el-form-item label="文件名称" prop="docName">
+              <el-input v-model="form.docName" placeholder="请输入文件名称" />
+            </el-form-item>
+            <el-form-item label="文件级别" prop="docLevel">
+              <el-select v-model="form.docLevel" placeholder="请选择文件级别">
+                <el-option
+                  v-for="item in levelOptions"
+                  :key="item.levelId"
+                  :label="item.levelName"
+                  :value="item.levelId"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="选择标签(最多5个)" prop="tagName" color="red">
+              <el-tag
+                :key="tag"
+                v-for="tag in dynamicTags"
+                closable
+                :disable-transitions="false"
+                @close="handleClose(tag)"
+              >
+                {{ tag }}
+              </el-tag>
+              <el-input
+                class="input-new-tag"
+                v-if="inputVisible"
+                v-model="inputValue"
+                ref="saveTagInput"
+                size="small"
+                @keyup.enter.native="handleInputConfirm"
+                @blur="handleInputConfirm"
+                maxlength="5"
+                placeholder="最多输入五个字"
+              >
+              </el-input>
+              <el-button
+                v-else
+                class="button-new-tag"
+                size="small"
+                @click="showInput"
+                >添加标签</el-button
+              >
+            </el-form-item>
+            <el-form-item label="文件标签" color="red">
+              <el-tag
+                v-for="tag in tags"
+                :key="tag.tagName"
+                :type="tag.type"
+                @click="handleInputConfirm1(tag)"
+              >
+                {{ tag.tagName }}
+              </el-tag>
+            </el-form-item>
+            <el-form-item label="文件描述">
+              <el-input
+                v-model="form.docDesc"
+                type="textarea"
+                placeholder="请输入内容"
+              />
+            </el-form-item>
+          </el-form>
+          <div slot="footer" class="dialog-footer">
+            <el-button type="primary" @click="submitForm">确 定</el-button>
+            <el-button @click="cancel">取 消</el-button>
+          </div>
+        </el-dialog>
+
+        <!-- 是否机密文件 -->
+        <div class="jm" v-if="check">
+          <el-form
+            ref="loginForm"
+            :model="loginForm"
+            :rules="loginRules"
+            label-width="100px"
+            class="login-form"
+          >
+            <el-form-item label="用户名" prop="username">
+              <el-input
+                type="text"
+                v-model="loginForm.username"
+                autocomplete="off"
+              ></el-input>
+            </el-form-item>
+            <el-form-item label="密码" prop="password">
+              <el-input
+                type="password"
+                v-model="loginForm.password"
+                autocomplete="off"
+              ></el-input>
+            </el-form-item>
+            <el-form-item style="width: 100%">
+              <el-button
+                size="medium"
+                type="primary"
+                style="width: 30%"
+                @click="submitForm"
+              >
+                提交
+              </el-button>
+            </el-form-item>
+          </el-form>
+
+          <el-button class="gb1" icon="el-icon-close" size="small" circle @click="gb1" />
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+import "@/styles1/element-ui1.scss";
+
+import Cookies from "js-cookie";
+import { delShare1 } from "@/api/doc/share1";
+
+import { listTag } from "@/api/doc/tag.js";
+
+import {
+  listInfo,
+  getInfo,
+  delInfo,
+  addInfo,
+  updateInfo,
+} from "@/api/doc/info";
+import {
+  listDir,
+  getDir,
+  delDir,
+  addDir,
+  updateDir,
+  personalList,
+} from "@/api/doc/dir";
+import { listLevel } from "@/api/doc/level";
+
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+
+export default {
+  name: "Info",
+  components: {
+    Treeselect,
+  },
+  data() {
+    return {
+      //机密文件的账号密码内容
+      loginForm: {
+        username: "admin",
+        password: "admin123",
+      },
+      //机密文件的账号密码验证规则
+      loginRules: {
+        username: [
+          { required: true, trigger: "blur", message: "请输入您的用户名" },
+        ],
+        password: [
+          { required: true, trigger: "blur", message: "请输入您的密码" },
+        ],
+      },
+      //底部左边表格数据
+      tableData1: [],
+
+      // 机密界面
+      check: false,
+
+      //标签列表
+      tags: [],
+
+      //选择标签
+      dynamicTags: [],
+      inputVisible: false,
+      inputValue: "",
+
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 文件基本信息表格数据
+      infoList: [],
+      //目录ID
+      dirId: undefined,
+      //目录数据
+      dirList: undefined,
+      //文件等级数据
+      levelOptions: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        docName: null,
+        docLevel: null,
+        createYear: null,
+        params: {
+          tagId: null,
+        },
+      },
+      // 表单参数
+      form: {},
+      defaultProps: {
+        children: "children",
+        label: "dirName",
+        id: "dirId",
+      },
+      // 表单校验
+      rules: {
+        docName: [
+          {
+            required: true,
+            message: "文件名称不能为空",
+            trigger: "blur",
+          },
+        ],
+        dirId: [
+          {
+            required: true,
+            message: "文件目录不能为空",
+            trigger: "blur",
+          },
+        ],
+        docLevel: [
+          {
+            required: true,
+            message: "文件级别不能为空",
+            trigger: "blur",
+          },
+        ],
+      },
+    };
+  },
+  created() {
+    this.dirTree();
+  },
+  mounted() {
+    this.getLists();
+  },
+
+  watch: {
+    "form.docPath": function (path, old) {
+      if (path && path.lastIndexOf("/") > -1) {
+        let name = path.slice(path.lastIndexOf("/") + 1);
+        this.form.docName = name.split("_")[0];
+      }
+    },
+  },
+  methods: {
+    //底部表格数据
+    getLists() {
+      //左边表格
+      delShare1(this.queryParams).then((response) => {
+        // console.log(response.rows,'111111111');
+        // 给定义的列表空数组赋值
+        this.tableData1 = response.rows;
+        //改变是否机密的值
+        var newisSecret = this.tableData1.map((item) => item.isSecret);
+        // console.log(a);
+        newisSecret = response.rows.map(
+          (i) => (i.isSecret = i.isSecret == 1 ? "是" : "否")
+        );
+        // console.log(newisSecret);
+      });
+    },
+
+    //选择标签关闭
+    handleClose(tag) {
+      this.form.tagList.map((i, index) => {
+        if (tag == i.tagName) {
+          this.form.tagList.splice(index, 1);
+        }
+      });
+      this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
+    },
+
+    showInput() {
+      if (this.dynamicTags.length >= 5) {
+        this.inputVisible = false;
+        alert("标签数不允许超过五个");
+      } else {
+        this.inputVisible = true;
+        this.$nextTick((_) => {
+          this.$refs.saveTagInput.$refs.input.focus();
+        });
+      }
+    },
+    //固定的标签
+    handleInputConfirm1(tag) {
+      if (this.dynamicTags.indexOf(tag.tagName) == -1) {
+        this.dynamicTags.push(tag.tagName);
+        this.form.tagList.push({
+          tagId: tag.tagId,
+          tagName: tag.tagName,
+        });
+      }
+
+      if (this.dynamicTags.length > 5) {
+        alert("标签数不允许超过五个");
+        this.dynamicTags.pop();
+      }
+    },
+    //自定义标签
+    handleInputConfirm() {
+      let inputValue = this.inputValue;
+
+      //查询输入的标签在固定标签里是否存在
+      var Newtags = this.tags.find((value) => value.tagName == inputValue);
+      // console.log(a);
+      //删除标签
+      if (this.dynamicTags.indexOf(inputValue) != -1) {
+        this.dynamicTags.pop();
+        this.form.tagList.pop();
+      }
+      if (inputValue) {
+        this.dynamicTags.push(inputValue);
+      }
+      this.inputVisible = false;
+      this.inputValue = "";
+      //判断输入的标签在固定标签里是否存在,存在则换成固定标签
+      if (Newtags) {
+        this.form.tagList.push({
+          tagId: Newtags.tagId,
+          tagName: Newtags.tagName,
+        });
+      } else {
+        this.form.tagList.push({
+          tagName: inputValue,
+        });
+      }
+      // console.log(this.form);
+      if (this.dynamicTags.length > 5) {
+        alert("标签数不允许超过五个");
+        this.dynamicTags.pop();
+      }
+    },
+
+    /** 转换目录信息数据结构 */
+    normalizer(node) {
+      if (node.children && !node.children.length) {
+        delete node.children;
+      }
+      return {
+        id: node.dirId,
+        label: node.dirName,
+        children: node.children,
+      };
+    },
+    // 节点单击事件
+    handleNodeClick(data) {
+      this.dirId = data.dirId;
+      this.queryParams.dirId = this.dirId;
+      this.queryParams.searchValue = this.spaceId;
+      this.handleQuery();
+    },
+
+    /**下载按钮操作*/
+    handleDownload(row) {
+      location.href = row.docPath;
+    },
+
+    // 检验关闭
+    gb1() {
+      this.check = false;
+    },
+
+    // 是否机密
+    isSecretRole(row) {
+      // console.log(`row=${row}`);
+      if (row.isSecret == "是") {
+        this.check = true;
+        this.currentRow = row;
+      }
+    },
+    //预览
+    handlePreview(row) {
+      row = this.currentRow;
+      this.$tab.openPage(
+        window.open(
+          "/individual/Pre/user/" + row.docId + "?row=" + JSON.stringify(row),
+          "_blank"
+        )
+      );
+    },
+
+    //在线编辑
+    handleEdit(row) {
+      row.isEdit = true;
+      this.$tab.openPage(
+        window.open(
+          "/individual/Pre/user/" + row.docId + "?row=" + JSON.stringify(row),
+          "_blank"
+        )
+      );
+    },
+    //先获取左边目录树,拿到目录ID和spaceId才能查询
+    dirTree() {
+      this.loading = true;
+      personalList().then((response) => {
+        this.dirId = response.data[0].dirId;
+        this.spaceId = response.data[0].spaceId;
+        this.dirList = this.handleTree(response.data, "dirId");
+
+        this.queryParams.dirId = this.dirId;
+        this.queryParams.searchValue = this.spaceId;
+        this.getList();
+        //获取文件级别数据
+        listLevel().then((response) => {
+          this.levelOptions = response.rows;
+        });
+        this.loading = false;
+
+        //标签数据
+        listTag().then((res) => {
+          this.tags = res.rows;
+        });
+      });
+    },
+    /**处理文档级别数据*/
+    fileLevelData(row, col, value) {
+      const obj = this.levelOptions.find((item) => item.levelId == value);
+      return obj.levelName;
+    },
+    /**根据文档级别显示数据*/
+    checkLevel(row, role) {
+      try {
+        const obj = this.levelOptions.find(
+          (item) => item.levelId == row.docLevel
+        );
+        if (obj.levelRole.indexOf(role) != -1) {
+          return true;
+        } else {
+          return false;
+        }
+      } catch (e) {}
+    },
+    /** 查询文件基本信息列表 */
+    getList() {
+      this.loading = true;
+      listInfo(this.queryParams).then((response) => {
+        this.infoList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        docId: null,
+        dirId: this.dirId,
+        docName: null,
+        docType: null,
+        docSize: null,
+        classifyId: null,
+        docDesc: null,
+        docPath: null,
+        docLevel: null,
+        allowEdit: null,
+        docOf: null,
+        owner: null,
+        createYear: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null,
+        remark: null,
+        isDel: null,
+        searchValue: this.spaceId,
+        tagList: [],
+      };
+      this.resetForm("form");
+      this.dynamicTags = [];
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      // const para = {
+      //   tagId: queryParams.params.tagId,
+      // }
+      // this.queryParams.params = para;
+      // console.log(this.queryParams);
+
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.queryParams.dirId = this.dirId;
+      this.queryParams.searchValue = this.spaceId;
+      this.queryParams.params.tagId = null;
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map((item) => item.docId);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加文件基本信息";
+      // this.dynamicTags=[];
+      // console.log(this.dynamicTags);
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const docId = row.docId || this.ids;
+      getInfo(docId, row.createYear).then((response) => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改文件基本信息";
+        this.dynamicTags = this.form.tagList.map((item) => item.tagName);
+        // console.log(this.dynamicTags);
+        // console.log(this.form);
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate((valid) => {
+        if (valid) {
+          if (this.form.docId != null) {
+            updateInfo(this.form).then((response) => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addInfo(this.form).then((response) => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+
+      // console.log(this.dynamicTags.length);
+      // console.log(this.form);
+      // console.log(this.dynamicTags);
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const docIds = row.docId || this.ids;
+      this.$modal
+        .confirm('是否确认删除文件基本信息编号为"' + docIds + '"的数据项?')
+        .then(function () {
+          return delInfo(docIds);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download(
+        "doc/info/export",
+        {
+          ...this.queryParams,
+        },
+        `info_${new Date().getTime()}.xlsx`
+      );
+    },
+    /**格式化文件大小数据*/
+    fileSizeData(row, col, value) {
+      const KB = 1;
+      const MB = KB * 1024;
+      const GB = MB * 1024;
+      if (value < MB) {
+        return `${(value / KB).toFixed(2)} KB`;
+      } else if (value < GB) {
+        return `${(value / MB).toFixed(2)} MB`;
+      } else {
+        return `${(value / GB).toFixed(2)} GB`;
+      }
+    },
+    //验证账号密码
+    getCookie() {
+      const username = Cookies.get("username");
+      const password = Cookies.get("password");
+      const rememberMe = Cookies.get("rememberMe");
+      this.loginForm = {
+        username: username === undefined ? this.loginForm.username : username,
+        password:
+          password === undefined ? this.loginForm.password : decrypt(password),
+        rememberMe: rememberMe === undefined ? false : Boolean(rememberMe),
+      };
+    },
+
+    //验证账号密码
+    submitForm(row) {
+      this.$refs.loginForm.validate((valid) => {
+        if (valid) {
+          if (this.loginForm.rememberMe) {
+            Cookies.set("username", this.loginForm.username, { expires: 30 });
+            Cookies.set("password", encrypt(this.loginForm.password), {
+              expires: 30,
+            });
+          } else {
+            Cookies.remove("username");
+            Cookies.remove("password");
+          }
+          this.$store
+            .dispatch("Login", this.loginForm)
+            .then(() => {
+              // 登录成功
+              this.currentLoginStatus = 1;
+              // 关闭登录界面
+              this.check = false;
+              // console.log("登录成功", "关闭登录界面");
+
+              // console.log("预览界面");
+              this.handlePreview(row);
+            })
+            .catch(() => {
+              this.currentLoginStatus = 0;
+            });
+        }
+      });
+    },
+  },
+};
+</script>
+
+<style scoped lang='scss'>
+.containe {
+  color: #7ea4c8;
+  font-size: 0.14rem;
+  font-family: PingFang SC-Medium, PingFang SC;
+  font-weight: 500;
+  padding-left: calc(100vw * (20 / 1920));
+
+  .main {
+    width: calc(100vw * (1880 / 1920));
+    height: calc(100vh * (950 / 1080));
+    margin-top: calc(100vh * (30 / 1080));
+    .app-container {
+      width: calc(100vw * (1880 / 1920));
+      height: calc(100vh * (950 / 1080));
+      padding: 0;
+    }
+    .main-right {
+      width: calc(100vw * (1880 / 1920));
+      height: calc(100vh * (950 / 1080));
+      background: url(../../../assets/img/Group-610.png);
+      background-size: calc(100vw * (1880 / 1920)) calc(100vh * (950 / 1080));
+      margin-left: calc(100vw * (10 / 1920));
+      p {
+        color: #ffffffff;
+        font-size: 0.16rem;
+        padding-left: calc(100vw * (15 / 1920));
+        padding-top: calc(100vh * (20 / 1080));
+      }
+
+      .main-right-top {
+        height: calc(100vh * (60 / 1080));
+        margin-top: calc(100vw * (25 / 1920));
+        margin-bottom: calc(100vw * (20 / 1920));
+        margin-left: calc(100vw * (10 / 1920));
+        .reset1 {
+          color: #2e8aecff;
+          background: transparent;
+          border: 1px solid #2e8aecff;
+        }
+      }
+
+      .main-right-table {
+        width: calc(100vw * (1840 / 1920));
+        height: calc(100vh * (930 / 1080));
+        margin-left: calc(100vw * (8 / 1920));
+        background: transparent;
+        color: #7ea4c8ff;
+        overflow: auto;
+      }
+
+      //表格底部
+      .pagination-container {
+        width: calc(100vw * (1810 / 1920));
+        height: calc(100vh * (50 / 1080));
+        background: transparent;
+        padding: 0 !important;
+        margin: 0;
+        margin-left: calc(100vw * (20 / 1920));
+        margin-top: calc(100vh * (10 / 1080));
+      }
+    }
+  }
+  //机密验证界面
+  .jm {
+    width: calc(100vw * (530 / 1920));
+    height: calc(100vh * (370 / 1080));
+    // background: salmon;
+    background: url(../../../assets/img/Group-585.png);
+    background-size: calc(100vw * (530 / 1920)) calc(100vh * (370 / 1080));
+    padding-top: calc(100vw * (50 / 1920));
+    position: absolute;
+    top: 25%;
+    left: 35%;
+    z-index: 99;
+    display: flex;
+    // justify-content: center;
+    align-items: center;
+    .gb1 {
+      position: absolute;
+      top: 10%;
+      right: 8%;
+    }
+    .el-button-group {
+      position: absolute;
+      top: 10%;
+      right: 1%;
+    }
+  }
+}
+
+//标签按钮
+::v-deep .el-tag {
+  color: #df9439ff;
+  border: 1px solid #ff9839ff;
+  background: #bba99240;
+  margin-left: 3px;
+  margin-bottom: 3px;
+  height: calc(100vh * (35 / 1080));
+  line-height: calc(100vh * (35 / 1080));
+}
+
+
+//右边顶部字体样式
+::v-deep .el-form-item__label {
+  color: #2e8aecff;
+}
+
+//右边顶部搜索框样式
+::v-deep .el-input__inner {
+  background-color: transparent;
+  border: 1px solid #01d1ffff;
+  color: #ffffffcc;
+}
+
+::v-deep .el-form-item--small .el-form-item__content {
+  width: calc(100vw * (220 / 1920));
+}
+
+//右边顶部标签搜索
+::v-deep .el-select > .el-input {
+  width: calc(100vw * (180 / 1920));
+}
+
+//右边表格线条隐藏
+::v-deep .el-table::before {
+  height: 0;
+}
+
+//table样式
+::v-deep .el-table th {
+  background: #016c9aa6;
+  color: #2e8aec;
+}
+
+::v-deep .el-table tr {
+  background: transparent;
+}
+
+::v-deep .el-table tbody tr:hover > td {
+  background-color: #016c9a78 !important;
+}
+
+::v-deep .el-table td.el-table__cell {
+  border-bottom: 1px solid #006c9aff;
+}
+
+::v-deep .el-table th.el-table__cell.is-leaf {
+  border-bottom: 1px solid #006c9aff;
+}
+
+//按钮的样式
+::v-deep .el-button--primary.is-plain,
+.el-button--success.is-plain.is-disabled,
+.el-button--danger.is-plain.is-disabled,
+.el-button--warning.is-plain,
+.el-button--success.is-plain,
+.el-button--danger.is-plain {
+  background-color: #002a5cff;
+  border: none;
+  color: #2e8aec;
+}
+</style>

+ 41 - 14
src/views1/Page/PageView.vue

@@ -156,6 +156,7 @@
       <div class="left">
         <div class="left-top">
           <h3>最近收到的文件</h3>
+          <p @click="mores">更多</p>
         </div>
         <el-table
           :data="tableData1"
@@ -257,9 +258,9 @@
         label-width="100px"
         class="login-form"
       >
-        <el-form-item label="手机号/邮箱" prop="username">
+        <el-form-item label="用户名" prop="username">
           <el-input
-            type="password"
+            type="text"
             v-model="loginForm.username"
             autocomplete="off"
           ></el-input>
@@ -283,7 +284,7 @@
         </el-form-item>
       </el-form>
 
-      <el-button class="gb1" icon="el-icon-close" circle @click="gb1" />
+      <el-button class="gb1" icon="el-icon-close" size="small" circle @click="gb1" />
     </div>
   </div>
 </template>
@@ -291,6 +292,8 @@
 <script>
 import Cookies from "js-cookie";
 
+import "@/styles1/element-ui1.scss";
+
 import { delShare1, delShare2 } from "@/api/doc/share1";
 export default {
   data() {
@@ -303,7 +306,7 @@ export default {
       //机密文件的账号密码验证规则
       loginRules: {
         username: [
-          { required: true, trigger: "blur", message: "请输入您的账号" },
+          { required: true, trigger: "blur", message: "请输入您的用户名" },
         ],
         password: [
           { required: true, trigger: "blur", message: "请输入您的密码" },
@@ -339,6 +342,11 @@ export default {
     };
   },
   methods: {
+     //更多跳转
+     mores(){
+      this.$router.push("/home/page/more");
+     },
+
     //底部表格数据
     getList() {
       //左边表格
@@ -502,9 +510,6 @@ export default {
         .left-top {
           width: calc(100vw * (365 / 1920));
           height: calc(100vh * (40 / 1080));
-          font-size: 16px;
-          font-weight: 400;
-          color: #ffffff;
           margin-top: 5px;
           background: url(../../assets/img/main_left_decorate.png);
           background-size: calc(100vw * (365 / 1920)) calc(100vh * (40 / 1080));
@@ -517,6 +522,8 @@ export default {
             margin: 0;
             font-size: 0.2rem;
             font-weight: 400;
+            font-family: YouSheBiaoTiHei-Regular, YouSheBiaoTiHei !important;
+            color: #ffffff;
           }
         }
       }
@@ -709,11 +716,18 @@ export default {
         color: #ffffff;
         margin-top: 10px;
         background: url(../../assets/img/main_left_decorate.png);
-        background-size: cover;
+        background-size: calc(100vw * (880 / 1920)) calc(100vh * (40 / 1080));
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
         h3 {
-          padding-top: 3px;
           padding-left: 10px;
-          margin: 0;
+        }
+        p{
+          padding-right: 10px;
+          font-size: 0.2rem;
+          color: #2E8AECFF;
+          font-family: PingFang SC-Medium;
         }
       }
       .left-main {
@@ -785,11 +799,14 @@ export default {
     }
   }
    //机密验证界面
-  .jm {
+   .jm {
     width: calc(100vw * (530 / 1920));
     height: calc(100vh * (370 / 1080));
     // background: salmon;
-    background: #0f1540ff;
+    background: url(../../assets/img/Group-585.png);
+    background-size: calc(100vw * (530 / 1920)) calc(100vh * (370 / 1080));
+    padding-top: calc(100vh * (50 / 1080));
+    padding-left: calc(100vw * (30 / 1920));
     position: absolute;
     top: 25%;
     left: 35%;
@@ -799,8 +816,8 @@ export default {
     align-items: center;
     .gb1 {
       position: absolute;
-      top: 0;
-      right: 0;
+      top: 10%;
+      right: 8%;
     }
     .el-button-group {
       position: absolute;
@@ -848,6 +865,16 @@ export default {
 ::v-deep .el-table tbody tr:hover > td {
   background-color: #016c9a78 !important;
 }
+//预览弹出框样式
+::v-deep .el-form-item__label {
+  color: #2e8aecff;
+}
+
+::v-deep .el-input__inner {
+  background-color: transparent;
+  border: 1px solid #01d1ffff;
+  color: #ffffffcc;
+}
 </style>
 
 <style>