From 7a27d189379110ec1b9dcb356f73dcae66756ab0 Mon Sep 17 00:00:00 2001
From: feige <791364011@qq.com>
Date: 星期一, 04 八月 2025 21:42:34 +0800
Subject: [PATCH] 增加了各种代码

---
 src/views/archiveManager/archiveMaterial/index.vue |  641 +++++++++++++++++++
 src/views/archiveManager/arMAutoUser.vue           |   53 +
 src/views/system/user/index.vue                    |    6 
 src/api/system/archiverecordstouser.js             |   52 +
 src/views/archiveManager/seleUser.vue              |   16 
 src/api/system/category.js                         |   52 +
 src/api/system/materials.js                        |   44 +
 src/views/archiveCategory/index.vue                |  259 +++++++
 src/views/archiveManager/index.vue                 |  176 ++++
 src/views/archiveStatics/index.vue                 |  633 +++++++++++++++++++
 src/router/index.js                                |   15 
 src/api/system/records.js                          |    9 
 12 files changed, 1,910 insertions(+), 46 deletions(-)

diff --git a/src/api/system/archiverecordstouser.js b/src/api/system/archiverecordstouser.js
new file mode 100644
index 0000000..87f0296
--- /dev/null
+++ b/src/api/system/archiverecordstouser.js
@@ -0,0 +1,52 @@
+import request from '@/utils/request'
+
+// 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+export function listArchiverecordstouser(query) {
+  return request({
+    url: '/system/archiverecordstouser/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戣缁�
+export function getArchiverecordstouser(id) {
+  return request({
+    url: '/system/archiverecordstouser/' + id,
+    method: 'get'
+  })
+}
+
+// 鏂板銆愯濉啓鍔熻兘鍚嶇О銆�
+export function addArchiverecordstouser(data) {
+  return request({
+    url: '/system/archiverecordstouser',
+    method: 'post',
+    data: data
+  })
+}
+
+// 淇敼銆愯濉啓鍔熻兘鍚嶇О銆�
+export function updateArchiverecordstouser(data) {
+  return request({
+    url: '/system/archiverecordstouser',
+    method: 'put',
+    data: data
+  })
+}
+
+// 鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆�
+export function delArchiverecordstouser(id) {
+  return request({
+    url: '/system/archiverecordstouser/' + id,
+    method: 'delete'
+  })
+}
+// 鎺堟潈鐢ㄦ埛涓庢鍗风洰褰曠粦瀹氶�夋嫨
+export function authRecordToUser(data) {
+  return request({
+    url: '/system/archiverecordstouser/authUserToArchive',
+    method: 'put',
+    params: data
+  })
+}
diff --git a/src/api/system/category.js b/src/api/system/category.js
new file mode 100644
index 0000000..4305f29
--- /dev/null
+++ b/src/api/system/category.js
@@ -0,0 +1,52 @@
+import request from '@/utils/request'
+
+// 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+export function listCategory(query) {
+  return request({
+    url: '/system/category/list',
+    method: 'get',
+    params: query
+  })
+}
+// 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+export function listAllCategory() {
+  return request({
+    url: '/system/category/listAll',
+    method: 'get',
+
+  })
+}
+
+// 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戣缁�
+export function getCategory(id) {
+  return request({
+    url: '/system/category/' + id,
+    method: 'get'
+  })
+}
+
+// 鏂板銆愯濉啓鍔熻兘鍚嶇О銆�
+export function addCategory(data) {
+  return request({
+    url: '/system/category',
+    method: 'post',
+    data: data
+  })
+}
+
+// 淇敼銆愯濉啓鍔熻兘鍚嶇О銆�
+export function updateCategory(data) {
+  return request({
+    url: '/system/category',
+    method: 'put',
+    data: data
+  })
+}
+
+// 鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆�
+export function delCategory(id) {
+  return request({
+    url: '/system/category/' + id,
+    method: 'delete'
+  })
+}
diff --git a/src/api/system/materials.js b/src/api/system/materials.js
new file mode 100644
index 0000000..e8a1226
--- /dev/null
+++ b/src/api/system/materials.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+export function listMaterials(query) {
+  return request({
+    url: '/system/materials/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戣缁�
+export function getMaterials(materialId) {
+  return request({
+    url: '/system/materials/' + materialId,
+    method: 'get'
+  })
+}
+
+// 鏂板銆愯濉啓鍔熻兘鍚嶇О銆�
+export function addMaterials(data) {
+  return request({
+    url: '/system/materials',
+    method: 'post',
+    data: data
+  })
+}
+
+// 淇敼銆愯濉啓鍔熻兘鍚嶇О銆�
+export function updateMaterials(data) {
+  return request({
+    url: '/system/materials',
+    method: 'put',
+    data: data
+  })
+}
+
+// 鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆�
+export function delMaterials(materialId) {
+  return request({
+    url: '/system/materials/' + materialId,
+    method: 'delete'
+  })
+}
diff --git a/src/api/system/records.js b/src/api/system/records.js
index d2057e8..fa52a7c 100644
--- a/src/api/system/records.js
+++ b/src/api/system/records.js
@@ -8,7 +8,14 @@
     params: query
   })
 }
-
+//鏌ヨ褰撳墠鏈�澶�")=
+export function getMaxId()
+{
+  return request({
+    url: '/system/records/getMaxId',
+    method: 'get'
+  })
+}
 // 鏌ヨ妗f璁板綍璇︾粏
 export function getRecords(id) {
   return request({
diff --git a/src/router/index.js b/src/router/index.js
index 757abb6..9c62b6e 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -116,13 +116,24 @@
     permissions: ['system:records:edit'],
     children: [
       {
-        path: 'user/:roleId(\\d+)',
+        path: 'user/:roleId(\\d+)/:archiveRecordsId',
         component: () => import('@/views/archiveManager/arMAutoUser'),
         name: 'AuthUser127',
         meta: { title: '鍒嗛厤鐢ㄦ埛', activeMenu: '/archiveManager/infoManager' }
-      }
+      },
+      //妗堝嵎璇︾粏淇℃伅绠$悊
+      {
+        path: 'archiveMaterialManager/:recordId',
+        component: () => import('@/views/archiveManager/archiveMaterial/index'),
+        name: 'ArchiveMaterialManager',
+        meta: { title: '璇︾粏淇℃伅', activeMenu: '/archiveManager/infoManager' }
+      },
     ]
   },
+
+
+  //妗堝嵎璇︾粏淇℃伅绠$悊
+
   //妗堝嵎鍒嗛厤鐢ㄦ埛
   // {
   //   path: '/archiveManager/infoAuthManager',
diff --git a/src/views/archiveCategory/index.vue b/src/views/archiveCategory/index.vue
new file mode 100644
index 0000000..cdcc401
--- /dev/null
+++ b/src/views/archiveCategory/index.vue
@@ -0,0 +1,259 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="缂栧彿" prop="numb">
+        <el-input
+          v-model="queryParams.numb"
+          placeholder="璇疯緭鍏ョ紪鍙�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鍚嶇О" prop="nname">
+        <el-input
+          v-model="queryParams.nname"
+          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">閲嶇疆</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['system:category:add']"
+        >鏂板</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['system:category:edit']"
+        >淇敼</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['system:category:remove']"
+        >鍒犻櫎</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['system:category:export']"
+        >瀵煎嚭</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="categoryList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+
+      <el-table-column label="缂栧彿" align="center" prop="numb" />
+      <el-table-column label="鍚嶇О" align="center" prop="nname" />
+      <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-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['system:category:edit']"
+          >淇敼</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['system:category:remove']"
+          >鍒犻櫎</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-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="缂栧彿" prop="numb">
+          <el-input v-model="form.numb" placeholder="璇疯緭鍏ョ紪鍙�" />
+        </el-form-item>
+        <el-form-item label="鍚嶇О" prop="nname">
+          <el-input v-model="form.nname" 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>
+</template>
+
+<script>
+import { listCategory, getCategory, delCategory, addCategory, updateCategory } from "@/api/system/category"
+
+export default {
+  name: "Category",
+  data() {
+    return {
+      // 閬僵灞�
+      loading: true,
+      // 閫変腑鏁扮粍
+      ids: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 銆愯濉啓鍔熻兘鍚嶇О銆戣〃鏍兼暟鎹�
+      categoryList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        numb: null,
+        nname: null
+      },
+      // 琛ㄥ崟鍙傛暟
+      form: {},
+      // 琛ㄥ崟鏍¢獙
+      rules: {
+      }
+    }
+  },
+  created() {
+    this.getList()
+  },
+  methods: {
+    /** 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛� */
+    getList() {
+      this.loading = true
+      listCategory(this.queryParams).then(response => {
+        this.categoryList = response.data.data
+        this.total = response.data.total
+        this.loading = false
+      })
+    },
+    // 鍙栨秷鎸夐挳
+    cancel() {
+      this.open = false
+      this.reset()
+    },
+    // 琛ㄥ崟閲嶇疆
+    reset() {
+      this.form = {
+        id: null,
+        numb: null,
+        nname: null
+      }
+      this.resetForm("form")
+    },
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.pageNum = 1
+      this.getList()
+    },
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.resetForm("queryForm")
+      this.handleQuery()
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 鏂板鎸夐挳鎿嶄綔 */
+    handleAdd() {
+      this.reset()
+      this.open = true
+      this.title = "娣诲姞銆愯濉啓鍔熻兘鍚嶇О銆�"
+    },
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleUpdate(row) {
+      this.reset()
+      const id = row.id || this.ids
+      getCategory(id).then(response => {
+        this.form = response.data
+        this.open = true
+        this.title = "淇敼銆愯濉啓鍔熻兘鍚嶇О銆�"
+      })
+    },
+    /** 鎻愪氦鎸夐挳 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateCategory(this.form).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛")
+              this.open = false
+              this.getList()
+            })
+          } else {
+            addCategory(this.form).then(response => {
+              this.$modal.msgSuccess("鏂板鎴愬姛")
+              this.open = false
+              this.getList()
+            })
+          }
+        }
+      })
+    },
+    /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+    handleDelete(row) {
+      const ids = row.id || this.ids
+      this.$modal.confirm('鏄惁纭鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆戠紪鍙蜂负"' + ids + '"鐨勬暟鎹」锛�').then(function() {
+        return delCategory(ids)
+      }).then(() => {
+        this.getList()
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛")
+      }).catch(() => {})
+    },
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    handleExport() {
+      this.download('system/category/export', {
+        ...this.queryParams
+      }, `category_${new Date().getTime()}.xlsx`)
+    }
+  }
+}
+</script>
diff --git a/src/views/archiveManager/arMAutoUser.vue b/src/views/archiveManager/arMAutoUser.vue
index 3117b2e..c978b7f 100644
--- a/src/views/archiveManager/arMAutoUser.vue
+++ b/src/views/archiveManager/arMAutoUser.vue
@@ -28,6 +28,7 @@
     <el-row :gutter="10" class="mb8">
       <el-col :span="1.5">
         <el-button
+          v-if="vws"
           type="primary"
           plain
           icon="el-icon-plus"
@@ -61,21 +62,30 @@
 
     <el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="鐢ㄦ埛鍚嶇О" prop="userName" :show-overflow-tooltip="true" />
-      <el-table-column label="鐢ㄦ埛鏄电О" prop="nickName" :show-overflow-tooltip="true" />
-      <el-table-column label="閭" prop="email" :show-overflow-tooltip="true" />
-      <el-table-column label="鎵嬫満" prop="phonenumber" :show-overflow-tooltip="true" />
-      <el-table-column label="鐘舵��" align="center" prop="status">
+      <el-table-column label="鐢ㄦ埛鍚嶇О" prop="sysUser.userName" :show-overflow-tooltip="true" />
+      <el-table-column label="鐢ㄦ埛鏄电О" prop="sysUser.nickName" :show-overflow-tooltip="true" >
+        <template slot-scope="scope">{{scope.row.sysUser.nickName?scope.row.sysUser.nickName:'--'}}</template>
+
+        </el-table-column>
+      <el-table-column label="閭" prop="sysUser.email" :show-overflow-tooltip="true" >
+            <template slot-scope="scope">{{scope.row.sysUser.email?scope.row.sysUser.email:'--'}}</template>
+
+      </el-table-column>
+      <el-table-column label="鎵嬫満" prop="sysUser.phonenumber" :show-overflow-tooltip="true" >
+        <template slot-scope="scope">{{scope.row.sysUser.phonenumber?scope.row.sysUser.phonenumber:'--'}}</template>
+
+        </el-table-column>
+   <!--   <el-table-column label="鐘舵��" align="center" prop="sysUser.status">
         <template slot-scope="scope">
           <dict-tag :options="dict.type.sys_normal_disable" :value="scope.row.status"/>
         </template>
-      </el-table-column>
+      </el-table-column> -->
       <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" width="180">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.createTime) }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+      <el-table-column label="鎿嶄綔" align="center" prop="11" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button
             size="mini"
@@ -95,20 +105,21 @@
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
     />
-    <select-user ref="select" :roleId="queryParams.roleId" @ok="handleQuery" />
+    <select-user ref="select" :roleId="queryParams.roleId" :recordId="queryParams.recordId" @ok="handleQuery" />
   </div>
 </template>
 
 <script>
 import {UserRoleIdList, allocatedUserList, authUserCancel, authUserCancelAll } from "@/api/system/role"
 import selectUser from "./seleUser"
-
+import {listArchiverecordstouser,addArchiverecordstouser} from "@/api/system/archiverecordstouser"
 export default {
   name: "AuthUser1",
   dicts: ['sys_normal_disable'],
    components: { selectUser },
   data() {
     return {
+      vws: true,
       // 閬僵灞�
       loading: true,
       // 閫変腑鐢ㄦ埛缁�
@@ -126,15 +137,19 @@
         pageNum: 1,
         pageSize: 10,
         roleId: undefined,
-        userName: undefined,
-        phonenumber: undefined
+        archiveRecordsId: undefined
+      //  userName: undefined,
+      //  phonenumber: undefined
       }
     }
   },
   created() {
     const roleId = this.$route.params && this.$route.params.roleId
-    if (roleId) {
+    const recordId = this.$route.params && this.$route.params.archiveRecordsId
+    alert(recordId)
+    if (roleId&&recordId) {
       this.queryParams.roleId = roleId
+      this.queryParams.archiveRecordsId = recordId
       this.getList()
     }
   },
@@ -144,9 +159,10 @@
       this.loading = true
       console.log(this.queryParams)
       console.log("------------")
-      UserRoleIdList(this.queryParams).then(response => {
-          this.userList = response.rows
-          this.total = response.total
+      listArchiverecordstouser(this.queryParams).then(response => {
+        console.log(response)
+          this.userList = response.data.data
+          this.total = response.data.total
           this.loading = false
         }
       )
@@ -199,3 +215,10 @@
   }
 }
 </script>
+<style scoped>
+/* el-table 鍒楁暟鎹负绌鸿嚜鍔ㄦ樉绀� -- */
+.className :empty::before{
+	content:'--';
+	color:gray;
+}
+</style>
diff --git a/src/views/archiveManager/archiveMaterial/index.vue b/src/views/archiveManager/archiveMaterial/index.vue
new file mode 100644
index 0000000..35ccbc2
--- /dev/null
+++ b/src/views/archiveManager/archiveMaterial/index.vue
@@ -0,0 +1,641 @@
+<template>
+    <div class="app-container">
+
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="璐d换鑰�" prop="creator">
+        <el-input
+          v-model="queryParams.creator"
+          placeholder="璇疯緭鍏ヨ矗浠昏��"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鏂囦欢棰樺悕" prop="title">
+        <el-input
+          v-model="queryParams.title"
+          placeholder="璇疯緭鍏ユ枃浠堕鐩�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鏃ユ湡" prop="date">
+        <el-date-picker clearable
+          v-model="queryParams.date"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="璇烽�夋嫨鏃ユ湡">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item label="椤靛彿" prop="pageNumber">
+        <el-input
+          v-model="queryParams.pageNumber"
+          placeholder="璇疯緭鍏ラ〉鍙�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="椤垫" prop="pageOrder">
+        <el-input
+          v-model="queryParams.pageOrder"
+          placeholder="璇疯緭鍏ラ〉娆�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鎵�澶勯樁娈�" prop="stage">
+          <el-select
+            v-model="queryParams.stage"
+            placeholder="璇烽�夋嫨鎵�澶勯樁娈�"
+            clearable
+          >
+            <el-option
+              v-for="item in stageOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+
+      <el-form-item label="鍏紑灞炴��" prop="publicity">
+          <el-select
+            v-model="queryParams.publicity"
+            placeholder="璇烽�夋嫨鍏紑灞炴��"
+            clearable
+          >
+            <el-option
+              v-for="item in publicityOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+      </el-form-item>
+      <el-form-item label="鏄惁涓洪檮浠�" label-width="55" prop="isAttachment">
+          <el-select
+            v-model="queryParams.isAttachment"
+            placeholder="璇烽�夋嫨鏄惁涓洪檮浠�"
+            clearable
+          >
+            <el-option
+              v-for="item in isAttachmentOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item label="淇濈鏈熼檺" prop="retentionPeriod">
+          <el-select
+            v-model="queryParams.retentionPeriod"
+            placeholder="璇烽�夋嫨淇濈鏈熼檺"
+            clearable
+          >
+            <el-option
+              v-for="item in retentionPeriodOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+      <el-form-item label="瀵嗙骇" prop="securityLevel">
+          <el-select
+            v-model="queryParams.securityLevel"
+            placeholder="璇烽�夋嫨瀵嗙骇"
+            clearable
+          >
+            <el-option
+              v-for="item in securityLevelOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+      </el-form-item>
+      <el-form-item label="鏄惁鏁忔劅" prop="isSensitive">
+       
+
+
+        <el-select
+            v-model="queryParams.isSensitive"
+            placeholder="璇疯緭鍏ユ槸鍚︽晱鎰�"
+            clearable
+          >
+            <el-option
+              v-for="item in isAttachmentOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+      </el-form-item>
+      <el-form-item label="鏄惁娉ㄩ攢" prop="isCanceled">
+        
+
+        <el-select
+            v-model="queryParams.isCanceled"
+            placeholder="璇疯緭鍏ユ槸鍚︽敞閿�"
+            clearable
+          >
+            <el-option
+              v-for="item in isAttachmentOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+      </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">閲嶇疆</el-button>
+      </el-form-item>
+    </el-form>
+
+      <el-row :gutter="10" class="mb8">
+        <el-col :span="1.5">
+          <el-button
+            type="primary"
+            plain
+            icon="el-icon-plus"
+            size="mini"
+            @click="handleAdd"
+            v-hasPermi="['system:materials:add']"
+          >鏂板</el-button>
+        </el-col>
+        <el-col :span="1.5">
+          <el-button
+            type="success"
+            plain
+            icon="el-icon-edit"
+            size="mini"
+            :disabled="single"
+            @click="handleUpdate"
+            v-hasPermi="['system:materials:edit']"
+          >淇敼</el-button>
+        </el-col>
+        <el-col :span="1.5">
+          <el-button
+            type="danger"
+            plain
+            icon="el-icon-delete"
+            size="mini"
+            :disabled="multiple"
+            @click="handleDelete"
+            v-hasPermi="['system:materials:remove']"
+          >鍒犻櫎</el-button>
+        </el-col>
+        <el-col :span="1.5">
+          <el-button
+            type="warning"
+            plain
+            icon="el-icon-download"
+            size="mini"
+            @click="handleExport"
+            v-hasPermi="['system:materials:export']"
+          >瀵煎嚭</el-button>
+        </el-col>
+        <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      </el-row>
+
+      <el-table v-loading="loading" :data="materialsList" @selection-change="handleSelectionChange">
+        <el-table-column type="selection" width="55" align="center" />
+        <el-table-column label="璐d换鑰�" align="center" prop="creator" />
+        <el-table-column label="鏂囦欢棰樺悕" align="center" prop="title" />
+        <el-table-column label="鏃ユ湡" align="center" prop="date" width="180">
+          <template slot-scope="scope">
+            <span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="椤靛彿" align="center" prop="pageNumber" />
+        <el-table-column label="椤垫" align="center" prop="pageOrder" />
+        <el-table-column label="鎵�澶勯樁娈�" align="center" prop="stage" />
+        <el-table-column label="鍏紑灞炴��" align="center" prop="publicity" />
+        <el-table-column label="鏄惁涓洪檮鍥惧強闄勪欢" align="center" prop="isAttachment" />
+
+        <el-table-column label="淇濈鏈熼檺" align="center" prop="retentionPeriod" />
+        <el-table-column label="瀵嗙骇" align="center" prop="securityLevel" />
+        <el-table-column label="鏄惁娑夊瘑鍙婃晱鎰熶俊鎭�" align="center" prop="isSensitive" />
+        <el-table-column label="鏄惁娉ㄩ攢" align="center" prop="isCanceled" />
+        <el-table-column label="鏍煎紡" align="center" prop="format" />
+        <el-table-column label="骞呴潰" align="center" prop="sizeType" />
+        <el-table-column label="姘村钩鍒嗚鲸鐜�" align="center" prop="horizontalResolution" />
+        <el-table-column label="鍨傜洿鍒嗚鲸鐜�" align="center" prop="verticalResolution" />
+        <el-table-column label="瀹藉害" align="center" prop="width" />
+        <el-table-column label="楂樺害" align="center" prop="height" />
+        <el-table-column label="澶у皬" align="center" prop="fileSize" />
+        <el-table-column label="闄勪欢鍙婂巻鍙插彂闂彿" align="center" prop="attachmentHistoryNumbers" />
+
+        <el-table-column label="鎿嶄綔" align="center" width="160" class-name="small-padding ">
+          <template slot-scope="scope">
+            <el-button
+              size="mini"
+              type="text"
+              icon="el-icon-edit"
+              @click="handleUpdate(scope.row)"
+              v-hasPermi="['system:materials:edit']"
+            >淇敼</el-button>
+            <el-button
+              size="mini"
+              type="text"
+              icon="el-icon-edit"
+              @click="handleUpdate(scope.row)"
+              v-hasPermi="['system:materials:edit']"
+            >瀵煎叆闄勪欢</el-button>
+            <el-button
+              size="mini"
+              type="text"
+              icon="el-icon-delete"
+              @click="handleDelete(scope.row)"
+              v-hasPermi="['system:materials:remove']"
+            >鍒犻櫎</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-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
+        <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+          <el-form-item label="璐d换鑰�" prop="creator">
+            <el-input v-model="form.creator" placeholder="璇疯緭鍏ヨ矗浠昏��" />
+          </el-form-item>
+          <el-form-item label="鏂囦欢棰樺悕" prop="title">
+            <el-input v-model="form.title" placeholder="璇疯緭鍏ユ枃浠堕鍚�" />
+          </el-form-item>
+          <el-form-item label="鏃ユ湡" prop="date">
+            <el-date-picker clearable
+              v-model="form.date"
+              type="date"
+              value-format="yyyy-MM-dd"
+              placeholder="璇烽�夋嫨鏃ユ湡">
+            </el-date-picker>
+          </el-form-item>
+          <el-form-item label="椤靛彿" prop="pageNumber">
+            <el-input v-model="form.pageNumber" placeholder="璇疯緭鍏ラ〉鍙�" />
+          </el-form-item>
+          <el-form-item label="椤垫" prop="pageOrder">
+            <el-input v-model="form.pageOrder" placeholder="璇疯緭鍏ラ〉娆�" />
+          </el-form-item>
+          <el-form-item label="鎵�澶勯樁娈�" prop="stage">
+          <el-select
+            v-model="form.stage"
+            placeholder="璇烽�夋嫨鎵�澶勯樁娈�"
+          >
+            <el-option
+              v-for="item in stageOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+          <el-form-item label="鍏紑灞炴��" prop="publicity">
+          <el-select
+            v-model="form.publicity"
+            placeholder="璇烽�夋嫨鍏紑灞炴��"
+          >
+            <el-option
+              v-for="item in publicityOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+
+          <el-form-item label="鏄惁涓洪檮浠�" prop="isAttachment">
+          <el-select
+            v-model="form.isAttachment"
+            placeholder="璇烽�夋嫨鏄惁涓洪檮浠�"
+          >
+            <el-option
+              v-for="item in isAttachmentOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+
+          <el-form-item label="淇濈鏈熼檺" prop="retentionPeriod">
+          <el-select
+            v-model="form.retentionPeriod"
+            placeholder="璇烽�夋嫨淇濈鏈熼檺"
+          >
+            <el-option
+              v-for="item in retentionPeriodOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+
+      <!-- 瀵硅瘽妗嗚〃鍗曚腑鐨勫瘑绾� -->
+      <el-form-item label="瀵嗙骇" prop="securityLevel">
+          <el-select
+            v-model="form.securityLevel"
+            placeholder="璇烽�夋嫨瀵嗙骇"
+          >
+            <el-option
+              v-for="item in securityLevelOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </el-form-item>
+
+         
+
+          <el-form-item label="鏄惁鏁忔劅" prop="isSensitive">
+          <el-select
+            v-model="form.isSensitive"
+            placeholder="璇疯緭鍏ユ槸鍚︽晱鎰�"
+          >
+            <el-option
+              v-for="item in isAttachmentOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+          </el-form-item>
+          <el-form-item label="鏄惁娉ㄩ攢" prop="isCanceled">
+          <el-select
+            v-model="form.isCanceled"
+            placeholder="璇疯緭鍏ユ槸鍚︽敞閿�"
+          >
+            <el-option
+              v-for="item in isAttachmentOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
+          </el-select>
+        </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>
+  </template>
+
+  <script>
+  import { listMaterials, getMaterials, delMaterials, addMaterials, updateMaterials } from "@/api/system/materials"
+
+  export default {
+    name: "Materials",
+    data() {
+      return {
+        // 娣诲姞瀵嗙骇閫夐」
+        securityLevelOptions: [
+          { value: '绉樺瘑', label: '绉樺瘑' },
+          { value: '鏅��', label: '鏅��' }
+        ],
+          // 娣诲姞淇濈鏈熼檺閫夐」
+          retentionPeriodOptions: [
+          { value: '10骞�', label: '10骞�' },
+          { value: '30骞�', label: '30骞�' },
+          { value: '姘镐箙', label: '姘镐箙' }
+        ],
+        //娣诲姞鏄惁涓洪檮浠�
+            // 娣诲姞鏄惁涓洪檮浠堕�夐」
+            isAttachmentOptions: [
+          { value: '鏄�', label: '鏄�' },
+          { value: '鍚�', label: '鍚�' }
+        ],
+              // 娣诲姞鍏紑灞炴�ч�夐」
+              publicityOptions: [
+          { value: '涓诲姩鍏紑', label: '涓诲姩鍏紑' },
+          { value: '渚濈敵璇峰叕寮�', label: '渚濈敵璇峰叕寮�' },
+          { value: '鍏嶄簣鍏紑', label: '鍏嶄簣鍏紑' }
+        ],
+           // 娣诲姞闃舵閫夐」
+           stageOptions: [
+          { value: '01-鐢宠鏉愭枡', label: '01-鐢宠鏉愭枡' },
+          { value: '02-鍔炴杩囩▼鏉愭枡', label: '02-鍔炴杩囩▼鏉愭枡' },
+          { value: '03-缁撹鎬ф枃浠�', label: '03-缁撹鎬ф枃浠�' },
+          { value: '04-鍏朵粬鏉愭枡', label: '04-鍏朵粬鏉愭枡' },
+          { value: '05-妗f鍙樻洿鏉愭枡', label: '05-妗f鍙樻洿鏉愭枡' }
+        ],
+        recordId: null,
+        // 閬僵灞�
+        loading: true,
+        // 閫変腑鏁扮粍
+        ids: [],
+        // 闈炲崟涓鐢�
+        single: true,
+        // 闈炲涓鐢�
+        multiple: true,
+        // 鏄剧ず鎼滅储鏉′欢
+        showSearch: true,
+        // 鎬绘潯鏁�
+        total: 0,
+        // 銆愯濉啓鍔熻兘鍚嶇О銆戣〃鏍兼暟鎹�
+        materialsList: [],
+        // 寮瑰嚭灞傛爣棰�
+        title: "",
+        // 鏄惁鏄剧ず寮瑰嚭灞�
+        open: false,
+        // 鏌ヨ鍙傛暟
+        queryParams: {
+          pageNum: 1,
+          pageSize: 10,
+          creator: null,
+          title: null,
+          date: null,
+          pageNumber: null,
+          pageOrder: null,
+          stage: null,
+          publicity: null,
+          isAttachment: null,
+          isDiagram: null,
+          retentionPeriod: null,
+          securityLevel: null,
+          isSensitive: null,
+          isCanceled: null,
+          format: null,
+          sizeType: null,
+          horizontalResolution: null,
+          verticalResolution: null,
+          width: null,
+          height: null,
+          fileSize: null,
+          attachmentHistoryNumbers: null,
+          remarks: null,
+          createdAt: null,
+          updatedAt: null,
+          recordId: null
+        },
+        // 琛ㄥ崟鍙傛暟
+        form: {
+            // ... 鍏朵粬form灞炴�т繚鎸佷笉鍙� ...
+            securityLevel: '鏅��' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
+        },
+        // 琛ㄥ崟鏍¢獙
+        rules: {
+          creator: [
+            { required: true, message: "$comment涓嶈兘涓虹┖", trigger: "blur" }
+          ],
+          title: [
+            { required: true, message: "$comment涓嶈兘涓虹┖", trigger: "blur" }
+          ],
+          date: [
+            { required: true, message: "$comment涓嶈兘涓虹┖", trigger: "blur" }
+          ],
+        }
+      }
+    },
+    created() {
+      //const roleId = this.$route.params && this.$route.params.roleId
+      const recordId = this.$route.params && this.$route.params.recordId
+      alert(recordId)
+      this.recordId = recordId;
+      if (recordId) {
+
+        this.queryParams.recordId = recordId
+        this.getList()
+      }
+    },
+    methods: {
+      /** 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛� */
+      getList() {
+        this.loading = true
+        listMaterials(this.queryParams).then(response => {
+          console.log(response)
+          this.materialsList = response.data.data
+          this.total = response.data.total
+          this.loading = false
+        })
+      },
+      // 鍙栨秷鎸夐挳
+      cancel() {
+        this.open = false
+        this.reset()
+      },
+      // 琛ㄥ崟閲嶇疆
+      reset() {
+        this.form = {
+          materialId: null,
+          creator: null,
+          title: null,
+          date: null,
+          pageNumber: null,
+          pageOrder: null,
+          stage: null,
+          publicity: null,
+          isAttachment: null,
+          isDiagram: null,
+          retentionPeriod: null,
+          securityLevel: null,
+          isSensitive: null,
+          isCanceled: null,
+          format: null,
+          sizeType: null,
+          horizontalResolution: null,
+          verticalResolution: null,
+          width: null,
+          height: null,
+          fileSize: null,
+          attachmentHistoryNumbers: null,
+          remarks: null,
+          createdAt: null,
+          updatedAt: null,
+          recordId: null
+        }
+        this.resetForm("form")
+      },
+      /** 鎼滅储鎸夐挳鎿嶄綔 */
+      handleQuery() {
+        this.queryParams.pageNum = 1
+        this.getList()
+      },
+      /** 閲嶇疆鎸夐挳鎿嶄綔 */
+      resetQuery() {
+        this.resetForm("queryForm")
+        this.handleQuery()
+      },
+      // 澶氶�夋閫変腑鏁版嵁
+      handleSelectionChange(selection) {
+        this.ids = selection.map(item => item.materialId)
+        this.single = selection.length!==1
+        this.multiple = !selection.length
+      },
+      /** 鏂板鎸夐挳鎿嶄綔 */
+      handleAdd() {
+        this.reset()
+        this.form.securityLevel = '鏅��' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
+        this.form.isSensitive = '鍚�' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
+        this.form.isCanceled = '鍚�' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
+        this.form.isAttachment = '鍚�' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
+        this.form.isDiagram = '鍚�' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
+        this.form.retentionPeriod = '姘镐箙' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
+        this.open = true
+        this.title = "娣诲姞妗堝嵎璇︾粏淇℃伅"
+      },
+      /** 淇敼鎸夐挳鎿嶄綔 */
+      handleUpdate(row) {
+        this.reset()
+        const materialId = row.materialId || this.ids
+        getMaterials(materialId).then(response => {
+          this.form = response.data
+          this.open = true
+          this.title = "淇敼妗堝嵎璇︾粏淇℃伅"
+        })
+      },
+      /** 鎻愪氦鎸夐挳 */
+      submitForm() {
+        this.$refs["form"].validate(valid => {
+          if (valid) {
+            if (this.form.materialId != null) {
+              updateMaterials(this.form).then(response => {
+                this.$modal.msgSuccess("淇敼鎴愬姛")
+                this.open = false
+                this.getList()
+              })
+            } else {
+              console.log(this.form)
+              this.form.recordId = this.recordId
+              console.log("==============+++++++++++++++============")
+              addMaterials(this.form).then(response => {
+                this.$modal.msgSuccess("鏂板鎴愬姛")
+                this.open = false
+                this.getList()
+              })
+            }
+          }
+        })
+      },
+      /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+      handleDelete(row) {
+        const materialIds = row.materialId || this.ids
+        this.$modal.confirm('鏄惁纭鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆戠紪鍙蜂负"' + materialIds + '"鐨勬暟鎹」锛�').then(function() {
+          return delMaterials(materialIds)
+        }).then(() => {
+          this.getList()
+          this.$modal.msgSuccess("鍒犻櫎鎴愬姛")
+        }).catch(() => {})
+      },
+      /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+      handleExport() {
+        this.download('system/materials/export', {
+          ...this.queryParams
+        }, `materials_${new Date().getTime()}.xlsx`)
+      }
+    }
+  }
+  </script>
diff --git a/src/views/archiveManager/index.vue b/src/views/archiveManager/index.vue
index 170ef67..cbd0c09 100644
--- a/src/views/archiveManager/index.vue
+++ b/src/views/archiveManager/index.vue
@@ -26,12 +26,18 @@
         />
       </el-form-item>
       <el-form-item label="鍏紑灞炴��" prop="publicAttribute">
-        <el-input
+        <el-select
           v-model="queryParams.publicAttribute"
-          placeholder="璇疯緭鍏ュ叕寮�灞炴��"
+          placeholder="璇烽�夋嫨鍏紑灞炴��"
           clearable
-          @keyup.enter.native="handleQuery"
-        />
+        >
+          <el-option
+            v-for="item in publicAttributeOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
       </el-form-item>
       <el-form-item label="缂栧埗鍗曚綅" prop="preparationUnit">
         <el-input
@@ -50,12 +56,18 @@
         </el-date-picker>
       </el-form-item>
       <el-form-item label="淇濈鏈熼檺" prop="retentionPeriod">
-        <el-input
+        <el-select
           v-model="queryParams.retentionPeriod"
-          placeholder="璇疯緭鍏ヤ繚绠℃湡闄�"
+          placeholder="璇烽�夋嫨淇濈鏈熼檺"
           clearable
-          @keyup.enter.native="handleQuery"
-        />
+        >
+          <el-option
+            v-for="item in retentionPeriodOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
       </el-form-item>
       <el-form-item label="瀵嗙骇" prop="securityClassification">
         <el-input
@@ -226,14 +238,15 @@
       <el-table-column label="鎿嶄綔" align="center" width="160" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button
-            v-if="amio"
             size="mini"
             type="text"
             icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
+            @click="handleInfo(scope.row)"
             v-hasPermi="['system:records:edit']"
-          >妗堝嵎璇︾粏淇℃伅绠$悊</el-button>
+          >妗堝嵎璇︾粏淇℃伅</el-button>
           <el-button
+          v-if="scope.row.ownData||scope.row.userId==1"
+
             size="mini"
             type="text"
             icon="el-icon-edit"
@@ -268,13 +281,46 @@
     />
 
     <!-- 娣诲姞鎴栦慨鏀规。妗堣褰曞璇濇 -->
-    <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-form-item label="妗f鍙�" prop="recordId">
-          <el-input v-model="form.recordId" placeholder="璇疯緭鍏ユ。妗堝彿" />
+    <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="120px">
+        <el-form-item label="妗f鍙�" >
+
+        <el-row :gutter="8">
+          <el-col :span="6">
+            <el-select
+              v-model="form.recordType"
+              placeholder="閫夋嫨妗f绫诲瀷"
+              @change="handleRecordTypeChange"
+            >
+              <el-option
+                v-for="item in recordTypeOptions"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              />
+            </el-select>
+          </el-col>
+          <el-col :span="6">
+            <el-input
+              v-model="form.recordYear"
+              placeholder="杈撳叆骞翠唤"
+              @input="generateRecordId"
+            />
+          </el-col>
+          <el-col :span="6">
+            <el-input
+              v-model="form.recordSeq"
+              placeholder="鑷姩鐢熸垚"
+              disabled
+            />
+          </el-col>
+        </el-row>
         </el-form-item>
         <el-form-item label="鍙戞枃鍙�" prop="inquiryNumber">
           <el-input v-model="form.inquiryNumber" placeholder="璇疯緭鍏ュ彂闂彿" />
+        </el-form-item>
+        <el-form-item label="寤鸿椤圭洰鍚嶇О" prop="projectName">
+          <el-input v-model="form.projectName" placeholder="璇疯緭鍏ュ缓璁鹃」鐩悕绉�" />
         </el-form-item>
         <div v-if="vis">
         <el-form-item label="妗堝嵎棰樺悕" prop="caseTitle">
@@ -312,9 +358,7 @@
         <el-form-item label="寤鸿鍦板潃" prop="constructionAddress">
           <el-input v-model="form.constructionAddress" placeholder="璇疯緭鍏ュ缓璁惧湴鍧�" />
         </el-form-item>
-        <el-form-item label="寤鸿椤圭洰鍚嶇О" prop="projectName">
-          <el-input v-model="form.projectName" placeholder="璇疯緭鍏ュ缓璁鹃」鐩悕绉�" />
-        </el-form-item>
+
         <el-form-item label="椤圭洰缂栧彿" prop="projectNumber">
           <el-input v-model="form.projectNumber" placeholder="璇疯緭鍏ラ」鐩紪鍙�" />
         </el-form-item>
@@ -344,12 +388,28 @@
 </template>
 
 <script>
-import { listRecords, getRecords, delRecords, addRecords, updateRecords } from "@/api/system/records"
+import { listRecords,getMaxId, getRecords, delRecords, addRecords, updateRecords } from "@/api/system/records"
+import { listAllCategory } from "@/api/system/category"
 
 export default {
   name: "Records",
   data() {
     return {
+      maxId: 0,
+            // 妗f绫诲瀷閫夐」
+            recordTypeOptions: [],
+            // 淇濈鏈熼檺閫夐」
+            retentionPeriodOptions: [
+        { value: "10骞�", label: "10骞�" },
+        { value: "30骞�", label: "30骞�" },
+        { value: "姘镐箙", label: "姘镐箙" }
+      ],
+         // 鍏紑灞炴�ч�夐」
+         publicAttributeOptions: [
+        { value: "涓诲姩鍏紑", label: "涓诲姩鍏紑" },
+        { value: "渚濈敵璇峰叕寮�", label: "渚濈敵璇峰叕寮�" },
+        { value: "鍏嶄簣鍏紑", label: "鍏嶄簣鍏紑" }
+      ],
       amio: false,
       vis: false,
       // 閬僵灞�
@@ -395,7 +455,9 @@
         historicalReferenceNumber: null
       },
       // 琛ㄥ崟鍙傛暟
-      form: {},
+      form: {
+        recordSeq: '',
+      },
       // 琛ㄥ崟鏍¢獙
       rules: {
         recordId: [
@@ -404,13 +466,64 @@
         inquiryNumber: [
           { required: true, message: "鍙戦棶鍙蜂笉鑳戒负绌�", trigger: "blur" }
         ],
+        projectName: [
+          { required: true, message: "椤圭洰鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
+        ],
       }
     }
   },
   created() {
     this.getList()
+
+    this.getId()
+    this.getRecordTypes()
+
+
   },
   methods: {
+    getId()
+    {
+      var _this = this; 
+      getMaxId().then(response=>{
+      //  alert(213)
+        console.log(response)
+        _this.maxId = String(response.data).padStart(5, '0')
+ 
+        _this.$set(_this.form, 'recordSeq', _this.maxId) // 
+      
+          //      alert(this.maxId)
+      })
+    },
+       /** 鑾峰彇妗f绫诲瀷鍒楄〃 */
+       getRecordTypes() {
+      listAllCategory().then(response => {
+        console.log(response)
+        console.log("----=============--------------")
+        this.recordTypeOptions = response.data.map(item => ({
+          value: item.numb,
+          label: item.nname
+        }))
+      })
+    },
+
+    /** 妗f绫诲瀷鍙樻洿澶勭悊 */
+    handleRecordTypeChange() {
+      this.generateRecordId()
+    },
+
+    /** 鐢熸垚妗f鍙� */
+    generateRecordId() {
+  
+      if (this.form.recordType && this.form.recordYear) {
+        // getNextRecordId({
+        //   type: this.form.recordType,
+        //   year: this.form.recordYear
+        // }).then(response => {
+        //   this.form.recordSeq = response.data.seq
+          this.form.recordId = `${this.form.recordType}-${this.form.recordYear}-${this.form.recordSeq}`
+        // })
+      }
+    },
     /** 鏌ヨ妗f璁板綍鍒楄〃 */
     getList() {
       this.loading = true
@@ -451,7 +564,8 @@
         archiveRoomNumber: null,
         microfilmNumber: null,
         remarks: null,
-        historicalReferenceNumber: null
+        historicalReferenceNumber: null,
+        recordSeq:null
       }
       this.resetForm("form")
     },
@@ -474,12 +588,26 @@
     /** 鏂板鎸夐挳鎿嶄綔 */
     handleAdd() {
       this.reset()
+      this.form.recordSeq = this.maxId
       this.open = true
       this.vis = false;
       this.title = "娣诲姞妗f璁板綍"
     },
+    /*鏌ョ湅璇︽儏*/
+    handleInfo(row)
+    {
+
+      var mid = row.id
+      const roleId = 2
+      alert(mid)
+      var recordId = mid
+    //  this.$router.push("/archiveManager/infoManagerAu/user/" + roleId+"/"+recordId)
+      this.$router.push("/archiveManager/infoManagerAu/archiveMaterialManager/" + recordId)
+
+    },
     /** 淇敼鎸夐挳鎿嶄綔 */
     handleUpdate(row) {
+
       this.reset()
       this.vis = true;
       const id = row.id || this.ids
@@ -513,6 +641,7 @@
     },
     // 鏇村鎿嶄綔瑙﹀彂
     handleCommand(command, row) {
+
       switch (command) {
         case "handleDataScope":
           this.handleDataScope(row)
@@ -527,8 +656,9 @@
     /** 鍒嗛厤鐢ㄦ埛鎿嶄綔 */
     handleAuthUser: function(row) {
       const roleId = 2
-      alert(roleId)
-      this.$router.push("/archiveManager/infoManagerAu/user/" + roleId)
+      var archiveRecordsId = row.recordId
+   //   alert(roleId)
+      this.$router.push("/archiveManager/infoManagerAu/user/" + roleId+"/"+archiveRecordsId)
     },
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete(row) {
diff --git a/src/views/archiveManager/seleUser.vue b/src/views/archiveManager/seleUser.vue
index 6faa5ed..6249c65 100644
--- a/src/views/archiveManager/seleUser.vue
+++ b/src/views/archiveManager/seleUser.vue
@@ -57,12 +57,17 @@
 </template>
 
 <script>
+  import {listArchiverecordstouser,addArchiverecordstouser,authRecordToUser} from "@/api/system/archiverecordstouser"
+
 import { UserRoleIdList,unallocatedUserList, authUserSelectAll } from "@/api/system/role"
 export default {
   dicts: ['sys_normal_disable'],
   props: {
     // 瑙掕壊缂栧彿
     roleId: {
+      type: [Number, String]
+    },
+    recordId: {
       type: [Number, String]
     }
   },
@@ -81,6 +86,7 @@
         pageNum: 1,
         pageSize: 10,
         roleId: undefined,
+        recordId: undefined,
         userName: undefined,
         phonenumber: undefined
       }
@@ -90,6 +96,7 @@
     // 鏄剧ず寮规
     show() {
       this.queryParams.roleId = this.roleId
+      this.queryParams.recordId = this.recordId
       this.getList()
       this.visible = true
     },
@@ -103,6 +110,8 @@
     // 鏌ヨ琛ㄦ暟鎹�
     getList() {
       UserRoleIdList(this.queryParams).then(res => {
+        console.log("=------00000000009")
+        console.log(res)
         this.userList = res.rows
         this.total = res.total
       })
@@ -119,13 +128,16 @@
     },
     /** 閫夋嫨鎺堟潈鐢ㄦ埛鎿嶄綔 */
     handleSelectUser() {
-      const roleId = this.queryParams.roleId
+      const recordId = this.queryParams.recordId
       const userIds = this.userIds.join(",")
+
+      alert(recordId)
+      alert(userIds)
       if (userIds == "") {
         this.$modal.msgError("璇烽�夋嫨瑕佸垎閰嶇殑鐢ㄦ埛")
         return
       }
-      authUserSelectAll({ roleId: roleId, userIds: userIds }).then(res => {
+      authRecordToUser({ recordId: recordId, userIds: userIds }).then(res => {
         this.$modal.msgSuccess(res.msg)
         this.visible = false
         this.$emit("ok")
diff --git a/src/views/archiveStatics/index.vue b/src/views/archiveStatics/index.vue
new file mode 100644
index 0000000..8f47ff1
--- /dev/null
+++ b/src/views/archiveStatics/index.vue
@@ -0,0 +1,633 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="妗f鍙�1" prop="recordId">
+        <el-input
+          v-model="queryParams.recordId"
+          placeholder="璇疯緭鍏ユ。妗堝彿"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鍙戞枃鍙�" prop="inquiryNumber">
+        <el-input
+          v-model="queryParams.inquiryNumber"
+          placeholder="璇疯緭鍏ュ彂鏂囧彿"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="妗堝嵎棰樺悕" prop="caseTitle">
+        <el-input
+          v-model="queryParams.caseTitle"
+          placeholder="璇疯緭鍏ユ鍗烽鍚�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鍏紑灞炴��" prop="publicAttribute">
+        <el-select
+          v-model="queryParams.publicAttribute"
+          placeholder="璇烽�夋嫨鍏紑灞炴��"
+          clearable
+        >
+          <el-option
+            v-for="item in publicAttributeOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="缂栧埗鍗曚綅" prop="preparationUnit">
+        <el-input
+          v-model="queryParams.preparationUnit"
+          placeholder="璇疯緭鍏ョ紪鍒跺崟浣�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="缂栧埗鏃ユ湡" prop="preparationDate">
+        <el-date-picker clearable
+          v-model="queryParams.preparationDate"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="璇烽�夋嫨缂栧埗鏃ユ湡">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item label="淇濈鏈熼檺" prop="retentionPeriod">
+        <el-select
+          v-model="queryParams.retentionPeriod"
+          placeholder="璇烽�夋嫨淇濈鏈熼檺"
+          clearable
+        >
+          <el-option
+            v-for="item in retentionPeriodOptions"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="瀵嗙骇" prop="securityClassification">
+        <el-input
+          v-model="queryParams.securityClassification"
+          placeholder="璇疯緭鍏ュ瘑绾�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="妗堝嵎椤垫暟" prop="pageCount">
+        <el-input
+          v-model="queryParams.pageCount"
+          placeholder="璇疯緭鍏ユ鍗烽〉鏁�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="绔嬫鍙�" prop="filingNumber">
+        <el-input
+          v-model="queryParams.filingNumber"
+          placeholder="璇疯緭鍏ョ珛妗堝彿"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="寤鸿鍗曚綅" prop="constructionUnit">
+        <el-input
+          v-model="queryParams.constructionUnit"
+          placeholder="璇疯緭鍏ュ缓璁惧崟浣�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="寤鸿鍦板潃" prop="constructionAddress">
+        <el-input
+          v-model="queryParams.constructionAddress"
+          placeholder="璇疯緭鍏ュ缓璁惧湴鍧�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="寤鸿椤圭洰鍚嶇О" prop="projectName">
+        <el-input
+          v-model="queryParams.projectName"
+          placeholder="璇疯緭鍏ュ缓璁鹃」鐩悕绉�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="椤圭洰缂栧彿" prop="projectNumber">
+        <el-input
+          v-model="queryParams.projectNumber"
+          placeholder="璇疯緭鍏ラ」鐩紪鍙�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鎵弿鍔犲伐鍏徃" prop="scanningCompany">
+        <el-input
+          v-model="queryParams.scanningCompany"
+          placeholder="璇疯緭鍏ユ壂鎻忓姞宸ュ叕鍙�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="妗f绠�(瀹�)鍙�" prop="archiveRoomNumber">
+        <el-input
+          v-model="queryParams.archiveRoomNumber"
+          placeholder="璇疯緭鍏ユ。妗堢(瀹�)鍙�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="缂╁井鍙�" prop="microfilmNumber">
+        <el-input
+          v-model="queryParams.microfilmNumber"
+          placeholder="璇疯緭鍏ョ缉寰彿"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="鍘嗗彶鐩稿叧鍙戞枃鍙�" prop="historicalReferenceNumber">
+        <el-input
+          v-model="queryParams.historicalReferenceNumber"
+          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">閲嶇疆</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['system:records:add']"
+        >鏂板</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['system:records:edit']"
+        >淇敼</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['system:records:remove']"
+        >鍒犻櫎</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['system:records:export']"
+        >瀵煎嚭</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="recordsList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+<!--      <el-table-column label="${comment}" align="center" prop="id" /> -->
+      <el-table-column label="妗f鍙�" align="center" prop="recordId" />
+      <el-table-column label="鍙戞枃鍙�" align="center" prop="inquiryNumber" />
+      <el-table-column label="妗堝嵎棰樺悕" align="center" prop="caseTitle" />
+
+
+
+      <el-table-column label="寤鸿鍦板潃" align="center" prop="constructionAddress" />
+      <el-table-column label="寤鸿椤圭洰鍚嶇О" align="center" prop="projectName" />
+      <el-table-column label="鐘舵��" align="center" prop="projectName" />
+
+    </el-table>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 娣诲姞鎴栦慨鏀规。妗堣褰曞璇濇 -->
+    <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="120px">
+        <el-form-item label="妗f鍙�" >
+
+        <el-row :gutter="8">
+          <el-col :span="6">
+            <el-select
+              v-model="form.recordType"
+              placeholder="閫夋嫨妗f绫诲瀷"
+              @change="handleRecordTypeChange"
+            >
+              <el-option
+                v-for="item in recordTypeOptions"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              />
+            </el-select>
+          </el-col>
+          <el-col :span="6">
+            <el-input
+              v-model="form.recordYear"
+              placeholder="杈撳叆骞翠唤"
+              @input="generateRecordId"
+            />
+          </el-col>
+          <el-col :span="6">
+            <el-input
+              v-model="form.recordSeq"
+              placeholder="鑷姩鐢熸垚"
+              disabled
+            />
+          </el-col>
+        </el-row>
+        </el-form-item>
+        <el-form-item label="鍙戞枃鍙�" prop="inquiryNumber">
+          <el-input v-model="form.inquiryNumber" placeholder="璇疯緭鍏ュ彂闂彿" />
+        </el-form-item>
+        <el-form-item label="寤鸿椤圭洰鍚嶇О" prop="projectName">
+          <el-input v-model="form.projectName" placeholder="璇疯緭鍏ュ缓璁鹃」鐩悕绉�" />
+        </el-form-item>
+        <div v-if="vis">
+        <el-form-item label="妗堝嵎棰樺悕" prop="caseTitle">
+          <el-input v-model="form.caseTitle" placeholder="璇疯緭鍏ユ鍗烽鍚�" />
+        </el-form-item>
+        <el-form-item label="鍏紑灞炴��" prop="publicAttribute">
+          <el-input v-model="form.publicAttribute" placeholder="璇疯緭鍏ュ叕寮�灞炴��" />
+        </el-form-item>
+        <el-form-item label="缂栧埗鍗曚綅" prop="preparationUnit">
+          <el-input v-model="form.preparationUnit" placeholder="璇疯緭鍏ョ紪鍒跺崟浣�" />
+        </el-form-item>
+        <el-form-item label="缂栧埗鏃ユ湡" prop="preparationDate">
+          <el-date-picker clearable
+            v-model="form.preparationDate"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="璇烽�夋嫨缂栧埗鏃ユ湡">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="淇濈鏈熼檺" prop="retentionPeriod">
+          <el-input v-model="form.retentionPeriod" placeholder="璇疯緭鍏ヤ繚绠℃湡闄�" />
+        </el-form-item>
+        <el-form-item label="瀵嗙骇" prop="securityClassification">
+          <el-input v-model="form.securityClassification" placeholder="璇疯緭鍏ュ瘑绾�" />
+        </el-form-item>
+        <el-form-item label="妗堝嵎椤垫暟" prop="pageCount">
+          <el-input v-model="form.pageCount" placeholder="璇疯緭鍏ユ鍗烽〉鏁�" />
+        </el-form-item>
+        <el-form-item label="绔嬫鍙�" prop="filingNumber">
+          <el-input v-model="form.filingNumber" placeholder="璇疯緭鍏ョ珛妗堝彿" />
+        </el-form-item>
+        <el-form-item label="寤鸿鍗曚綅" prop="constructionUnit">
+          <el-input v-model="form.constructionUnit" placeholder="璇疯緭鍏ュ缓璁惧崟浣�" />
+        </el-form-item>
+        <el-form-item label="寤鸿鍦板潃" prop="constructionAddress">
+          <el-input v-model="form.constructionAddress" placeholder="璇疯緭鍏ュ缓璁惧湴鍧�" />
+        </el-form-item>
+
+        <el-form-item label="椤圭洰缂栧彿" prop="projectNumber">
+          <el-input v-model="form.projectNumber" placeholder="璇疯緭鍏ラ」鐩紪鍙�" />
+        </el-form-item>
+        <el-form-item label="鎵弿鍔犲伐鍏徃" prop="scanningCompany">
+          <el-input v-model="form.scanningCompany" placeholder="璇疯緭鍏ユ壂鎻忓姞宸ュ叕鍙�" />
+        </el-form-item>
+        <el-form-item label="妗f绠�(瀹�)鍙�" prop="archiveRoomNumber">
+          <el-input v-model="form.archiveRoomNumber" placeholder="璇疯緭鍏ユ。妗堢(瀹�)鍙�" />
+        </el-form-item>
+        <el-form-item label="缂╁井鍙�" prop="microfilmNumber">
+          <el-input v-model="form.microfilmNumber" placeholder="璇疯緭鍏ョ缉寰彿" />
+        </el-form-item>
+        <el-form-item label="澶囨敞" prop="remarks">
+          <el-input v-model="form.remarks" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+        </el-form-item>
+        <el-form-item label="鍘嗗彶鐩稿叧鍙戞枃鍙�" prop="historicalReferenceNumber">
+          <el-input v-model="form.historicalReferenceNumber" placeholder="璇疯緭鍏ュ巻鍙茬浉鍏冲彂鏂囧彿" />
+        </el-form-item>
+        </div>
+      </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>
+</template>
+
+<script>
+import { listRecords,getMaxId, getRecords, delRecords, addRecords, updateRecords } from "@/api/system/records"
+import { listAllCategory } from "@/api/system/category"
+
+export default {
+  name: "Records",
+  data() {
+    return {
+      maxId: 0,
+            // 妗f绫诲瀷閫夐」
+            recordTypeOptions: [],
+            // 淇濈鏈熼檺閫夐」
+            retentionPeriodOptions: [
+        { value: "10骞�", label: "10骞�" },
+        { value: "30骞�", label: "30骞�" },
+        { value: "姘镐箙", label: "姘镐箙" }
+      ],
+         // 鍏紑灞炴�ч�夐」
+         publicAttributeOptions: [
+        { value: "涓诲姩鍏紑", label: "涓诲姩鍏紑" },
+        { value: "渚濈敵璇峰叕寮�", label: "渚濈敵璇峰叕寮�" },
+        { value: "鍏嶄簣鍏紑", label: "鍏嶄簣鍏紑" }
+      ],
+      amio: false,
+      vis: false,
+      // 閬僵灞�
+      loading: true,
+      // 閫変腑鏁扮粍
+      ids: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 妗f璁板綍琛ㄦ牸鏁版嵁
+      recordsList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        recordId: null,
+        inquiryNumber: null,
+        caseTitle: null,
+        publicAttribute: null,
+        preparationUnit: null,
+        preparationDate: null,
+        retentionPeriod: null,
+        securityClassification: null,
+        pageCount: null,
+        filingNumber: null,
+        constructionUnit: null,
+        constructionAddress: null,
+        projectName: null,
+        projectNumber: null,
+        scanningCompany: null,
+        archiveRoomNumber: null,
+        microfilmNumber: null,
+        remarks: null,
+        historicalReferenceNumber: null
+      },
+      // 琛ㄥ崟鍙傛暟
+      form: {
+        recordSeq: '',
+      },
+      // 琛ㄥ崟鏍¢獙
+      rules: {
+        recordId: [
+          { required: true, message: "妗f鍙蜂笉鑳戒负绌�", trigger: "blur" }
+        ],
+        inquiryNumber: [
+          { required: true, message: "鍙戦棶鍙蜂笉鑳戒负绌�", trigger: "blur" }
+        ],
+        projectName: [
+          { required: true, message: "椤圭洰鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
+        ],
+      }
+    }
+  },
+  created() {
+    this.getList()
+
+    this.getId()
+    this.getRecordTypes()
+
+
+  },
+  methods: {
+    getId()
+    {
+      var _this = this;
+      getMaxId().then(response=>{
+      //  alert(213)
+        console.log(response)
+        _this.maxId = String(response.data).padStart(5, '0')
+
+        _this.$set(_this.form, 'recordSeq', _this.maxId) //
+
+          //      alert(this.maxId)
+      })
+    },
+       /** 鑾峰彇妗f绫诲瀷鍒楄〃 */
+       getRecordTypes() {
+      listAllCategory().then(response => {
+        console.log(response)
+        console.log("----=============--------------")
+        this.recordTypeOptions = response.data.map(item => ({
+          value: item.numb,
+          label: item.nname
+        }))
+      })
+    },
+
+    /** 妗f绫诲瀷鍙樻洿澶勭悊 */
+    handleRecordTypeChange() {
+      this.generateRecordId()
+    },
+
+    /** 鐢熸垚妗f鍙� */
+    generateRecordId() {
+
+      if (this.form.recordType && this.form.recordYear) {
+        // getNextRecordId({
+        //   type: this.form.recordType,
+        //   year: this.form.recordYear
+        // }).then(response => {
+        //   this.form.recordSeq = response.data.seq
+          this.form.recordId = `${this.form.recordType}-${this.form.recordYear}-${this.form.recordSeq}`
+        // })
+      }
+    },
+    /** 鏌ヨ妗f璁板綍鍒楄〃 */
+    getList() {
+      this.loading = true
+      console.log(this.queryParams)
+      console.log("--------------")
+      listRecords(this.queryParams).then(response => {
+
+        console.log(response)
+        this.recordsList = response.data.data
+        this.total = response.data.total
+        this.loading = false
+      })
+    },
+    // 鍙栨秷鎸夐挳
+    cancel() {
+      this.open = false
+      this.reset()
+    },
+    // 琛ㄥ崟閲嶇疆
+    reset() {
+      this.form = {
+        id: null,
+        recordId: null,
+        inquiryNumber: null,
+        caseTitle: null,
+        publicAttribute: null,
+        preparationUnit: null,
+        preparationDate: null,
+        retentionPeriod: null,
+        securityClassification: null,
+        pageCount: null,
+        filingNumber: null,
+        constructionUnit: null,
+        constructionAddress: null,
+        projectName: null,
+        projectNumber: null,
+        scanningCompany: null,
+        archiveRoomNumber: null,
+        microfilmNumber: null,
+        remarks: null,
+        historicalReferenceNumber: null,
+        recordSeq:null
+      }
+      this.resetForm("form")
+    },
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.pageNum = 1
+      this.getList()
+    },
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.resetForm("queryForm")
+      this.handleQuery()
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 鏂板鎸夐挳鎿嶄綔 */
+    handleAdd() {
+      this.reset()
+      this.form.recordSeq = this.maxId
+      this.open = true
+      this.vis = false;
+      this.title = "娣诲姞妗f璁板綍"
+    },
+    /*鏌ョ湅璇︽儏*/
+    handleInfo(row)
+    {
+
+      var mid = row.id
+      const roleId = 2
+      alert(mid)
+      var recordId = mid
+    //  this.$router.push("/archiveManager/infoManagerAu/user/" + roleId+"/"+recordId)
+      this.$router.push("/archiveManager/infoManagerAu/archiveMaterialManager/" + recordId)
+
+    },
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleUpdate(row) {
+
+      this.reset()
+      this.vis = true;
+      const id = row.id || this.ids
+      getRecords(id).then(response => {
+        console.log(response)
+        console.log("----=============--------------")
+        this.form = response.data
+        this.open = true
+        this.title = "淇敼妗f璁板綍"
+      })
+    },
+    /** 鎻愪氦鎸夐挳 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateRecords(this.form).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛")
+              this.open = false
+              this.getList()
+            })
+          } else {
+            addRecords(this.form).then(response => {
+              this.$modal.msgSuccess("鏂板鎴愬姛")
+              this.open = false
+              this.getList()
+            })
+          }
+        }
+      })
+    },
+    // 鏇村鎿嶄綔瑙﹀彂
+    handleCommand(command, row) {
+
+      switch (command) {
+        case "handleDataScope":
+          this.handleDataScope(row)
+          break
+        case "handleAuthUser":
+          this.handleAuthUser(row)
+          break
+        default:
+          break
+      }
+    },
+    /** 鍒嗛厤鐢ㄦ埛鎿嶄綔 */
+    handleAuthUser: function(row) {
+      const roleId = 2
+      var archiveRecordsId = row.recordId
+   //   alert(roleId)
+      this.$router.push("/archiveManager/infoManagerAu/user/" + roleId+"/"+archiveRecordsId)
+    },
+    /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+    handleDelete(row) {
+      const ids = row.id || this.ids
+      this.$modal.confirm('鏄惁纭鍒犻櫎妗f璁板綍缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() {
+        return delRecords(ids)
+      }).then(() => {
+        this.getList()
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛")
+      }).catch(() => {})
+    },
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    handleExport() {
+      this.download('system/records/export', {
+        ...this.queryParams
+      }, `records_${new Date().getTime()}.xlsx`)
+    }
+  }
+}
+</script>
diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index 0261c7a..609ffc2 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -3,7 +3,7 @@
     <el-row :gutter="20">
       <splitpanes :horizontal="this.$store.getters.device === 'mobile'" class="default-theme">
         <!--閮ㄩ棬鏁版嵁-->
-        <pane size="16">
+<!--        <pane size="16">
           <el-col>
             <div class="head-container">
               <el-input v-model="deptName" placeholder="璇疯緭鍏ラ儴闂ㄥ悕绉�" clearable size="small" prefix-icon="el-icon-search" style="margin-bottom: 20px" />
@@ -12,7 +12,7 @@
               <el-tree :data="deptOptions" :props="defaultProps" :expand-on-click-node="false" :filter-node-method="filterNode" ref="tree" node-key="id" default-expand-all highlight-current @node-click="handleNodeClick" />
             </div>
           </el-col>
-        </pane>
+        </pane> -->
         <!--鐢ㄦ埛鏁版嵁-->
         <pane size="84">
           <el-col>
@@ -550,4 +550,4 @@
     }
   }
 }
-</script>
\ No newline at end of file
+</script>

--
Gitblit v1.9.1